[JAVA] Behandeln Sie in GCS hochgeladene CSV-Dateien

CSV-Datei lesen

Sie können den Inhalt der Datei mit blob.getContent abrufen, aber es ist ein Problem, wenn die Dateigröße groß ist.

Bucket bucket = getBucket(bucketName);
Storage.BlobListOption option = Storage.BlobListOption.prefix(directory);

Page<Blob> blobs = bucket.list(option);
Iterator<Blob> iterator = blobs.iterateAll().iterator();

List<String> csvList = new ArrayList<>();
while (iterator.hasNext()) {
    Blob blob = iterator.next();
    byte[] content = blob.getContent(Blob.BlobSourceOption.generationMatch());
    csvList.add(new String(content));
}

for (String csv : csvList) {
    // process...
}

Lesen Sie die CSV-Datei Zeile für Zeile

Anstelle von getContent können Sie Zeile für Zeile wie folgt lesen und verarbeiten

ReadChannel readChannel = blob.reader();
BufferedReader br = new BufferedReader(Channels.newReader(readChannel, "UTF-8"));

String line;
while((line = br.readLine()) != null){
    // process...
}

Recommended Posts

Behandeln Sie in GCS hochgeladene CSV-Dateien
Umgang mit hochgeladenen Bildern
Umgang mit TSV-Dateien und CSV-Dateien in Ruby
Datei zur JAR-Datei hinzufügen
Einführung in JAR-Dateien
Konvertieren Sie große XLSX-Dateien mit Apache POI in CSV
Konvertieren von TSV-Dateien in CSV-Dateien (mit Stückliste) in Ruby
Behandeln Sie Dateien mit NIO.2.
Umgang mit Instanzen
Zurücksetzen der Migrationsdatei