stream in string[] speichern

Dimax

Top Contributor
Guten Tag,
ich versuche ein stream in ein String [] zu speichern.
Das Problem ist das ich vor dem Einlesen ein String [] erstellen muss,aber ich weiß nicht wie gros es wird.

Code:
URL url=new URL(url);
        InputStreamReader is = new InputStreamReader(url.openStream());
        BufferedReader r = new BufferedReader(is);
        String [] arr;
        String line=null;
        //FileOutputStream fis = new FileOutputStream(file);
        //byte[] buffer = new byte[1024];
        int count=0;
        while((line=r.readLine())!=null){
            //arr[i]=line;
            ++count;
        }
        arr=new String[count];
Wie kriegt man raus wie viele Zeilen in einem Stream gibt's vor dem Speichern?
 

Flown

Administrator
Mitarbeiter
Ich würde das so kürzen:
Java:
URL url = new URL("url");
try (InputStreamReader is = new InputStreamReader(url.openStream());
     BufferedReader r = new BufferedReader(is);
     Stream<String> lineStream = r.lines()) {
  String[] lines = lineStream.toArray(String[]::new);
}
 
K

kneitzel

Gast
Das wird so relativ schwer, da diese <a> und </a> ja nicht in einer Zeile stehen müssen. Daher macht es dann doch mehr Sinn, hier eine Library wie Jsoup zu nutzen, die mit html umgehen kann.

Wenn Du aber davon ausgehst, dass <a> und </a> immer in einer Zeile vorkommen und dich nur diese Fälle interessieren, dann wäre möglich:
a) erst mittels map einen neuen String generieren, der nur noch den Teilstring zwischen dem <a> und </a> enthält.
b) dann mittels filter alle Elemente heraus filtern, die leer sind (wo also step a nicht geholfen hat.)

Und dann stolperst Du ggf. noch über mehrere Elemente auf einer Zeile und dann kommen wir automatisch zu flatMap. Und schwups: schon kann der Step b auch entfallen und es reich ein flatMap aus, das eben aus einem String Element 0 oder mehr String Elemente erzeugt...

Aber wie gesagt: Auswertung von html würde ich nicht so von Hand machen. Das ist nur als Übung interessant, damit man map / flatmap etwas kennen lernen kann ...
 

insert2020

Aktives Mitglied
Der Scanner hat eine (schöne) findAll-Methode...
Java:
	public static String[] links(String page) throws IOException {
		Pattern pattern = Pattern.compile("<a [^>]+>([^<]+)</a>");
		try (Scanner s = new Scanner(new InputStreamReader(new URL(page).openStream()))) {
			return s.findAll(pattern).map(mr -> mr.group(1)).toArray(String[]::new);
		}
	}

	public static void main(String[] args) throws IOException {
		String[] links = links("https://stackoverflow.com/questions/28148483/how-do-i-create-a-stream-of-regex-matches");
		for (String string : links) {
			System.out.println(string);
		}
	}
Insgesamt aber nicht sehr robust.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N String N-Gramme mit Stream erstellen Java Basics - Anfänger-Themen 7
M Input/Output Stream aus einem String Java Basics - Anfänger-Themen 2
M Stream in String umwandeln Java Basics - Anfänger-Themen 5
M Ausgabe in String anstatt auf Stream Java Basics - Anfänger-Themen 17
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
W Stream und LocalDate Java Basics - Anfänger-Themen 15
M Stream mit den ersten n natürlichen Zahlen Java Basics - Anfänger-Themen 4
berserkerdq2 Wo ist der SInn, dass man den Stream, den ich zum Schreiben nutze, outputstream nenne? Java Basics - Anfänger-Themen 5
berserkerdq2 Wann soll ich den Stream schließen, wenn ich das in einer Methode habe? Java Basics - Anfänger-Themen 8
K Erste Schritte Stream-Aufruf vereinfachen Java Basics - Anfänger-Themen 3
I Datei als Stream aus Ressource laden? Java Basics - Anfänger-Themen 2
O Alternative zu Stream.forEach() Java Basics - Anfänger-Themen 6
S Java Stream API Java Basics - Anfänger-Themen 6
A Stream Java Basics - Anfänger-Themen 14
T Buffered Stream leert Txt File Java Basics - Anfänger-Themen 3
A Textdatei mit stream einlesen Java Basics - Anfänger-Themen 2
B Text-Datei nur in Stream speichern und dann ausgeben Java Basics - Anfänger-Themen 3
J Gefilterten Stream über die Konsole ausgeben Java Basics - Anfänger-Themen 1
J Count und Copy in Stream<Path> Java Basics - Anfänger-Themen 11
W for Schleife in allgemeingültiges Konstrukt aus Stream und Lambdas Java Basics - Anfänger-Themen 6
W Stream Array List - Frage Java Basics - Anfänger-Themen 5
G refactoring mit stream Java Basics - Anfänger-Themen 27
P Java Verketten von Stream - Bedeutung der Anweisungen? Java Basics - Anfänger-Themen 3
nightsky_ Methoden (Stream) Collectors.toMap() Java Basics - Anfänger-Themen 2
W HTTP-Stream auf Ajax umbauen Java Basics - Anfänger-Themen 7
elischa Client-Server IO und Stream Steuerung ? Java Basics - Anfänger-Themen 2
N Eigene Stream Methoden implementieren Java Basics - Anfänger-Themen 3
M Panel erstellen, welches ein Control erhält. Ausgabe soll über einen Stream erfolgen. Java Basics - Anfänger-Themen 0
E Stream closed - Obwohl nicht manuell geschlossen! Java Basics - Anfänger-Themen 0
N Java.io.ioexception: Stream closed Java Basics - Anfänger-Themen 2
P Wann Byte-Stream und wann Character-Stream? Java Basics - Anfänger-Themen 11
S Input/Output nullpointerException beim schliessen von stream Java Basics - Anfänger-Themen 3
A Integer aus Stream to Double Java Basics - Anfänger-Themen 7
P Java Stream, wann welche Stream verwenden? Java Basics - Anfänger-Themen 3
M Java Stream?! Java Basics - Anfänger-Themen 8
S Input/Output Data-Input/Output-Stream Java Basics - Anfänger-Themen 2
V Jar-Datei von Byte-Array oder Stream laden? Java Basics - Anfänger-Themen 9
J Input/Output Auf effiziente Weise einen Stream auszulesen Java Basics - Anfänger-Themen 5
M Stream close Java Basics - Anfänger-Themen 6
A Prüfen ob Datei geöffnet ist bzw Stream finden Java Basics - Anfänger-Themen 2
H exception "java.io.IOException: Stream closed" Java Basics - Anfänger-Themen 10
Burny91 File.delete(file) geht nicht-Offener Stream aber WO? Java Basics - Anfänger-Themen 4
M Audio Stream läuft auf :connection abort: socket write error Java Basics - Anfänger-Themen 2
H Fehler-Stream grafisch umsetzen Java Basics - Anfänger-Themen 4
H Datentypen Byte-Array aus Stream lesen Java Basics - Anfänger-Themen 3
S Fehler beim Speichern von MP3-Stream Java Basics - Anfänger-Themen 6
bambi0815 Text Datei Stream to Char[][] Java Basics - Anfänger-Themen 7
D JSP: IOException: Stream closed nach dispatchter.forward(..) Java Basics - Anfänger-Themen 13
G Warum bei Stream close() aufrufen. Java Basics - Anfänger-Themen 12
G NoClassDefFoundError: javax/xml/stream/XMLStreamException Java Basics - Anfänger-Themen 23
P Stream Java Basics - Anfänger-Themen 4
alexpetri javax.xml.stream.* nicht gefunden Java Basics - Anfänger-Themen 3
M Stream unvollständig Java Basics - Anfänger-Themen 5
Zed Stream in Variable speichern. Java Basics - Anfänger-Themen 3
S Schreib Stream Java Basics - Anfänger-Themen 21
K datei komplett als Stream oder ähnliches Java Basics - Anfänger-Themen 4
A Serialisierbarer Stream? - File per RMI versenden Java Basics - Anfänger-Themen 4
R Binary Stream in Bild umwandeln Java Basics - Anfänger-Themen 5
C Position im Objekt-Stream Java Basics - Anfänger-Themen 2
C Stream-Konzept Java Basics - Anfänger-Themen 2
A von Socket-Stream lesen Java Basics - Anfänger-Themen 4
krgewb String mit Datumsangabe in Long umwandeln Java Basics - Anfänger-Themen 2
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
J Ähnlichen String in Liste finden Java Basics - Anfänger-Themen 6
Kartoffel_1 String transformation Java Basics - Anfänger-Themen 7
H String-Operation replace() - Zeichenkette verdoppeln Java Basics - Anfänger-Themen 2
K String analysieren Java Basics - Anfänger-Themen 27
Beowend String zu Date parsen Java Basics - Anfänger-Themen 1
Beowend String auf Satzzeichen überprüfen? Java Basics - Anfänger-Themen 6
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
String in ArrayList umwandeln Java Basics - Anfänger-Themen 1
I Sass Compiler und String erhalten? Java Basics - Anfänger-Themen 7
Avalon String in Double bzw. Währung konvertieren Java Basics - Anfänger-Themen 6
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
F Arraylist<String>Ein Wort pro Zeile Java Basics - Anfänger-Themen 6
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
N String überprüfen Java Basics - Anfänger-Themen 3
E String zerlegen aus args Java Basics - Anfänger-Themen 1
M Long-Typ in String-Änderung führt zu keinem Ergebnis bei großer Zahl Java Basics - Anfänger-Themen 11
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
J String Filter Java Basics - Anfänger-Themen 5
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
D 2D Char Array into String Java Basics - Anfänger-Themen 2
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
I Zerlegen von String Java Basics - Anfänger-Themen 3
B Beliebiger String gegeben Suche Datum in String Java Basics - Anfänger-Themen 6
I String Java Basics - Anfänger-Themen 4
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
H Zu langen String aufteilen - bequeme Methode? Java Basics - Anfänger-Themen 14
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
M Kommandozeilenparamter als EINEN String werten Java Basics - Anfänger-Themen 5
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
M Prüfen on eine Zahl im String enthalten ist Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben