Skip to content
Wireshark Wiki 中文翻译整理专题首页原始页面

Development/CSVExport

信息

CSV 导出

现在 WS 代码中有多个位置可以导出为 CSV 格式,我的感觉是 CSV 导出本身存在不止一种实现。找出所有位置,并确保这些实现共享相同的代码。

  • File/Export/Filetype: "1","0.000000","213.254.239.60","192.168.1.10","HTTP","Continuation or non-HTTP traffic"

  • !PacketListMenu/Copy/Summary(CSV): 3,0.009384,192.168.1.10,82.165.89.192,TCP,1902 > 80 [SYN] Seq=0 Len=0 MSS=1460

  • [在此处添加更多内容]

“导入者”应用程序

找出用于导入“我们的 CSV 格式”的应用程序,以及它们期望/接受的格式:

  • Excel http://en.wikipedia.org/wiki/CSV_application_support 表明它使用当前区域设置作为分隔符 - 例如 ';'

  • openoffice calc:会询问你想要使用什么分隔符。默认情况下它设置为 TAB

  • Perl/Java/Awk 等:这些可以很容易地处理一种格式,其中分隔符字符从不出现在数据内部;带引号的参数会开始变得棘手,因为引号字符本身可能出现在数据中。

  • [在此处添加更多内容]

Wireshark CSV 输出过滤器

一些可能适用于导入大多数“支持 CSV”的应用程序的步骤:

  • Win32:将字符从内部使用的 UTF8 转换为当前区域设置,例如使用 g_locale_from_utf8(我们在 UNIX 上也需要这样做吗?)
  • 将任何 " 替换(编码)为 ""
  • 用双引号 "" 分隔每个元素。这应当避免 ',' 和 'CR'/'NL' 带来的问题(是的,字段中包含 CR 或 NL 是有效的),我们在大多数——但不是全部——CSV 导出位置已经这样做了

显然,让所有 CSV 导出函数共享相同代码会是一个好主意,这样如果我们发现另一个问题,就可以在单个代码位置进行修改——而不会像现在这样在其他地方忘记修改。

Imported from https://wiki.wireshark.org/Development/CSVExport on 2020-08-11 23:12:43 UTC

相关 Wireshark Wiki 页面

网络分析技术档案