2017-10-13 4 views
0

Ich habe eine Textdatei am Speicherort C: \ Users \ Volki \ Documents \ Ciel \ Members \ Cielmember.txt. Die Textdatei Inhalt 2 Zeilen ist, sieht es wie folgt aus:
code1 = EX386MF06BR
code2 = DB45ZE45GT5Lesen Sie bestimmte Spalten in einer Textdatei

Was ich suche ist zu ignorieren, was vor dem Zeichen "=" (code1/code2) Beginnen Sie dann mit dem Lesen der Spalten (Spalte für Spalte) in jeder Zeile und zeigen Sie jeden Spaltenwert in Console.WriteLine() an.

Hier ist, was ich versucht habe, aber es funktioniert nicht.

if (File.Exists(@"C:\Users\Volki\Desktop\Test\testX.txt")) 
{ 
    string[] lines = File.ReadAllLines(@filename); 
    for (int y = 0; y < lines.Length; y++) 
    { 
     Console.WriteLine(lines[y]); 
     string[] columns = lines[y].Split('\t'); 
     for (int z = 0; z < columns.Length; z++) 
     { 
      Console.WriteLine(z + ":" + columns[z]); 
      Console.ReadKey(); 
     } 
    } 
} 
+1

Ich sehe, Sie sind mit 'split' die Dateien in neue Linien zu spalten, warum nicht die gleiche Technik verwenden, um jede Zeile geteilt durch '='? Dann greife auf das zweite Element zu: 'split (columns [z], '=') [1]' –

Antwort

0

Haben Sie Aufspaltlinien versuchen basierend auf „=“

if (File.Exists(@"C:\Users\Volki\Desktop\Test\testX.txt")) 
{ 
     string[] lines = File.ReadAllLines(@filename); 
     for (int y = 0; y < lines.Length; y++) 
     { 
       Console.WriteLine(lines[y]); 
       string[] columns = lines[y].Split('='); 
       // Columns should have two entries, one for codeX and another one for value. Since you only need the latter, print the second entry in columns 
       Console.WriteLine(columns[1]); 
       Console.ReadKey(); 
      } 
     } 
} 
+0

ich glaube, ich habe die richtige Frage nicht gestellt. Was ich will, ist Zeichen für Zeichen nicht Spalte für Spalte, – VolWag

Verwandte Themen