Schreiben Sie Die Registerkarte Datei Mit Trennzeichen

Ich habe Probleme beim schreiben eine Tab-getrennte Datei, und ich habe überprüft, um hier und noch nicht dazu gekommen meine Antworten noch.

Also ich habe da eine Funktion gibt den string zurück, mit dem wichtige Teile unten (Trennzeichen verwendet und wie Baue ich jede Zeile):

var delimiter = @"\t";
sb.Append(string.Join(delimiter, itemContent));
sb.Append(Environment.NewLine);

Den string der zurückgegeben wird, wie dieser:

H\t13\t170000000000001\t20150630
D\t1050\t10.0000\tY
D\t1050\t5.0000\tN

Und dann Schreibe ich es in eine Datei (Inhalt unter den string oben):

var content = BuildFile(item);
var filePath = tempDirectory + fileName;

//Create the File
using (FileStream fs = File.Create(filePath))
{
    Byte[] info = new UTF8Encoding(true).GetBytes(content);
    fs.Write(info, 0, info.Length);
}

Jedoch, die Datei-Ausgabe ist diese nicht mit tabs (geöffnet mit notepad++):

H\t13\t170000000000005\t20150630
D\t1050\t20.0000\tN
D\t1050\t2.5000\tY

Wenn es mehr werden sollte, wie diese (Beispiel-Datei zur Verfügung gestellt):

H   100115980   300010000000003 20150625
D   430181  1   N
D   342130  2   N
D   459961  1   N

Könnte dies werden verursacht durch die Codierung, die ich verwendet? Schätzen jede Eingabe, die Sie haben können, danke!

möglich, Duplikat der Reading/schreiben von CSV/tab-getrennte Dateien in c#
nicht wirklich, dies ist im wesentlichen eine Frage zu strings und C# - syntax
Sie können auch ControlChars.Tab (sb.Append(string.Join(ControlChars.Tab, itemContent));), wenn Sie annehmen, um fügen Sie einen Verweis auf Microsoft.VisualBasic
verwenden Path.Combine(tempDirectory, fileName);

InformationsquelleAutor AnimaSola | 2015-07-03

Schreibe einen Kommentar