空白境界を含む CSV ファイルを正しく処理するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-25 02:26:42
オリジナル
563 人が閲覧しました

How to Handle CSV Files with Whitespace Boundaries Correctly?

Scanner() を使用して CSV を読み取る問題

Scanner() を使用して CSV ファイルを読み取るときに、スペースを含むテキストに関する問題が発生することがよくあります次の行に移動中です。これは、Scanner が空白の境界に従うために発生します。

Scanner() の使用法での CSV 処理が正しくありません

提供されたコード スニペットは、Scanner() を使用して CSV ファイルを読み取り、処理します。ただし、スペースを含む行は正しく処理されません。たとえば、CSV 行「アドレス 1、アドレス 2」では、「アドレス 1」とカンマの間の空白によって複数の行に分割されます。

CSV 解析ガイドライン

CSV ファイルを操作する場合は、次のガイドラインを考慮することが重要です:

  • 間違った CSV パーサーは誤った結果を生成します: インターネット上の多くの CSV パーサーは引用符を実装しています。エスケープなどの側面が正しくないため、不正な出力が発生します。
  • 堅牢な CSV ライブラリを使用する: これらの問題を回避するには、opencsv、Ostermiller Java Utilities、または Apache Commons などの確立された CSV ライブラリを利用します。 CSV.
  • CSV RFC に従います: 独自のパーサーを作成する場合は、CSV の公式 RFC を注意深く調べて、適切な実装を確保してください。

この特定のケースでは、次の点で誤った処理が強調表示されます:

  • CSV ファイルには区切り文字と (引用符で囲まれた) 値の間に空白が含まれる場合があります。
  • Scanner() は入力を分割します。空白の境界に基づいていますが、これは CSV 解析では正しくありません。
  • CSV ファイルを正しく読み取るには、より適切な CSV パーサー ライブラリの使用を検討する必要があります。

以上が空白境界を含む CSV ファイルを正しく処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!