2012-01-19 108 views
-2

我有一個文本文件包含分隔記錄。Visual Basic中的文本文件處理

1243;jhhf';982u4k;9u2349;huf8 
kij;9238u;98ur23;jfwf;03i24 

我需要用從數據庫或其他來源返回的值替換每個記錄的第4部分的值。

任何線索?期待VB代碼

+0

你想怎麼處理這?什麼編程語言(shell,PHP,C++等)可用? – 2012-01-19 07:31:19

+0

你想如何連接兩者,每四個部分是否獲得相同的新值或者是否需要查找它(例如,第一部分是標識符)?你是否需要替換每一行的第四部分,換句話說,它是否被'Environment.NewLine'分割或者是一行? –

+0

是的,每個第四部分由來自DB的值根據flatfile中存在的值而不是所有的相同值。 –

回答

0

你可以試試這個(用C#):

C#釋放

List<string> newLines = new List<string>(); 
string[] lines = File.ReadAllLines(filename); 
foreach (string line in lines) 
{ 
    string[] parts = line.Split(";".ToCharArray()); 
    parts[3] = string_from_db; 
    newLines.Add(String.Join(";", parts)); 
} 
File.WriteAllLines(filename, newLines.ToArray()); 

VB.NET釋放

Dim newLines As List(Of String) = New List(Of String) 
Dim lines As String() = File.ReadAllLines(filename) 
For Each line As String In lines 
    Dim parts As String() = line.Split(";") 
    parts(3) = string_from_db 
    newLines.Add(String.Join(";", parts)) 
Next 
File.WriteAllLines(filename, newLines.ToArray()) 
+0

Applogies,我需要它的VB.NET應用程序。 –

+0

@ user1157902:看看我編輯的帖子 – Marco

+0

@ user1157902:你解決了你的麻煩嗎? – Marco