03. juni 2013 - 20:32
Der er
6 kommentarer
bufferedreader
Jeg skal læse en meget stor fil ind hvor det står således. dadada####dasa####hjemmeside dadada####dasa####hjemmeside dadada####dasa####hjemmeside dadada####dasa####hjemmeside dadada####dasa####hjemmeside filen består af ca. 50.000 linjer og jeg skal KUN læse hjemmeside navnene ind. hvordan kan jeg gøre det hurtigst muligt????? Har kigget lidt på bufferedreader, men er den hurtig? Hvis ja, så ved jeg ikke hvordan man skal "usedelimiter eller splitte" firkanterne
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
BufferedReader er hurtig hvis du bruger en stor buffer.
Hvis URL er i fast position kan du fiske den ud med substring. Hvis du skal finde den via "####" markers, saa er det hurtigste nok lastIndexOf. regex er elegant men koster nok en lille smule.
Og 50000 linier er da en lille fil.
jeg ved bare ikke helt hvordan jeg skal læse filen ind via bufferedreader og splitte linjerne så jeg kun får hjemmesiderne udskrevet
BufferedReader br = new BufferedReader(input, 1024000); String line; while((line = br.readLine()) != null) { int urlix = line.lastIndexOf(MARKER); if(urlix > 0) { urlix += MARKER.length(); String url = line.substring(urlix); } else { // hmmmm } } br.close();
Kurser inden for grundlæggende programmering