ホームページ  >  記事  >  Java  >  Scanner() を使用して CSV を解析し、スペースを正確に処理できますか?

Scanner() を使用して CSV を解析し、スペースを正確に処理できますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-24 18:34:02583ブラウズ

Can I Parse CSV with Scanner() and Handle Spaces Accurately?

Read CSV with Scanner()

Java を使用して CSV ファイルを読み取る場合、スペースを含むテキストが新しいファイルに移動されるという問題が発生する可能性があります。線。これは、Scanner クラスがスペースを区切り文字として解釈するときに発生します。

この問題に対処するには、CSV 解析に Scanner() を使用しないことをお勧めします。代わりに、

  • opencsv
  • Ostermiller Java Utilities
  • Apache Commons CSV
など、CSV 処理用に特別に設計されたライブラリを利用することをお勧めします。

これらのライブラリは、スペース、引用符、エスケープ文字の存在など、CSV 解析の複雑さを適切に考慮しています。

opencsv ライブラリを使用した例を次に示します。

<code class="java">import com.opencsv.CSVReader;
import java.io.FileReader;
import java.util.List;

public class Main {

    public static void main(String[] args) {
        String fileName = "uploadedcsv/employees.csv";

        try (CSVReader reader = new CSVReader(new FileReader(fileName))) {
            List<String[]> lines = reader.readAll();
            for (String[] line : lines) {
                for (String value : line) {
                    System.out.print(value + " ");
                }
                System.out.println();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}</code>

By特殊な CSV 解析ライブラリを使用すると、スペースを含むテキストを正確に処理し、データが正しく解析されることを確認できます。

以上がScanner() を使用して CSV を解析し、スペースを正確に処理できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。