2015-03-24 21 views
6

Ich kenne den üblichen Weg, httppotifiedfilebase in String-Array zu konvertieren, die die Datei zuerst im Server speichern und dann die Daten vom Server lesen wird. Gibt es trotzdem, um das String-Array direkt aus der httppofiledfilebase zu bekommen, ohne die Datei auf dem Server zu speichern?Wie man httppotifiedfilebase in String-Array konvertiert

Antwort

10

Nun können Sie Ihre Datei Zeile für Zeile von Stream wie folgt lesen:

List<string> csvData = new List<string>(); 
using (System.IO.StreamReader reader = new System.IO.StreamReader(currencyConversionsFile.InputStream)) 
{ 
    while (!reader.EndOfStream) 
    { 
     csvData.Add(reader.ReadLine()); 
    } 
} 
+0

Vielen Dank. Es funktioniert perfekt. – Gavin

1

Von einem anderen Thread zum selben Thema, diese Antwort hat mir geholfen, die gepostete Datei in einen String zu bekommen -

https://stackoverflow.com/a/40304761/5333178

zitieren,

string result = string.Empty; 

using (BinaryReader b = new BinaryReader(file.InputStream)) 
{ 
    byte[] binData = b.ReadBytes(file.ContentLength); 
    result = System.Text.Encoding.UTF8.GetString(binData); 
} 

Zerlegung der Zeichenkette in ein Array -

string[] csvData = new string[] { }; 

csvData = result.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None); 
Verwandte Themen