2016-08-25 5 views
0

に置き換えて下さいI次のファイルを持っている:VB - ファイル

/home/InputDirectory/DHddmmyy.txt 
/home/InputDirectory2/DHddmmyy.txt 
/home/InputDirectory3/DHddmmyy.txt 

私はVBから「セッド」と同等の操作を行いたいので、私は、この仕事をするためのsed Cygwinを呼び出すために持っていけません

/home/InputDirectory/DH250816.txt 
/home/InputDirectory2/DH250816.txt 
/home/InputDirectory3/DH250816.txt 

変数はパラメータとしてスクリプトに渡されます。本当にVBで何か経験がないので、どんな助けでも大歓迎です。私が見つけた唯一の事はこれです:

Dim TestString As String = "Shopping List" 
' Returns "Shipping List". 
Dim aString As String = Replace(TestString, "o", "i") 

しかし、どのように私はそれを実行するために各行を繰り返しますか?ファイルのすべての行についてこれを行う方法はありませんか?前もって感謝します。

+2

ですべてを置き換えることができますが、すでにここに答えました:https://stackoverflow.com/questions/10129288/find-and-replace-text-in-a-txt- document-using-visual-basic –

+0

VB.NETはVBAと同じではありません。言語を選んでください。 –

答えて

1

次のコードを試してください。ここで私はあなたがテスト手順の下

Sub Process() 
    Dim sOutputFileName As String 

    sOutputFileName = FormatFileName("/home/InputDirectory/DHddmmyy.txt") 
    Debug.Print sOutputFileName 

    sOutputFileName = FormatFileName("/home/InputDirectory2/DHddmmyy.txt") 
    Debug.Print sOutputFileName 

    sOutputFileName = FormatFileName("/home/InputDirectory3/DHddmmyy.txt") 
    Debug.Print sOutputFileName 

End Sub 

を使用してコードをテストすること(同じ形式で)

Function FormatFileName(sFileName As String) As String 
    Dim sReturnValue As String 

    sReturnValue = Replace(sFileName, "ddmmyy", Format(Now(), "ddmmyy"), , , vbTextCompare) 

    FormatFileName = sReturnValue 
End Function 

を現在の日付と「DDMMYY」を置き換える機能を作成している はそれが役に立てば幸い!あなたのケースでは

+0

私は手動で日付を入力したいのですか? YYMMDD形式で言う?ありがとうございました!!! – onlyf

+0

はその後 薄暗いsReturnValue文字列として sReturnValue =(sFileName、 "DDMMYY" を置き換え、フォーマット(dtDate、「文字列として(文字列、日付などdtDateとしてsFileName)機能 機能FormatFileNameでパラメータ/引数として日付を渡しますddmmyy ")、、、vbTextCompare) FormatFileName = sReturnValue End Function –

1

あなたは一度だけ

Dim text = File.ReadAllText("C:\1.txt") 
text = text.Replace("ddmmyy", Now.ToString("ddMMyy")) 
File.WriteAllText("C:\1.txt", text)