2010-12-03 7 views
2

Wie konvertiere ich eine ArrayList von Strings in einen BufferedReader? Ich bin offen dafür, die ArrayList als Eingabestream zu erstellen, aber ich möchte eine einfache Möglichkeit, Strings in die Datenstruktur einzufügen, die schließlich vom BufferedReader erfasst werden.Eine ArrayList von Strings in einen BufferedReader konvertieren

+1

Warum möchten Sie dies tun? Das Lesen einer 'ArrayList' ist viel einfacher als das Abrufen von Daten von einem gepufferten Lesegerät. – jjnguy

+0

Weil die Funktion, die ich versuche zu testen, einen BufferedReader als Eingabe benötigt. – syker

+0

ok, das macht Sinn. – jjnguy

Antwort

9

Dies kann nicht der schnellste oder effizienteste Weg sein, aber dies ist das erste, was ich gedacht:

// Assume the ArrayList is named stringList 
StringBuilder buffer = new StringBuilder(); 
for(String current : stringList) { 
    buffer.append(current).append("\n"); 
} 

BufferedReader br = new BufferedReader(new StringReader(buffer.toString())); 
+0

+1 das ist effizient genug zum Testen –

2

Hier ist ein Einzeiler. Es funktioniert mit einer Liste von Strings auch:

BufferedReader buffer = 
new BufferedReader(new StringReader( String.join( "\n", stringList ))); 
Verwandte Themen