如何正确地将 CSV 文件解析为二维数组?

2023-12-01

我正在尝试将 csv 文件解析为二维数组,其中每一行都是一个数据条目,每一列都是该条目中的一个字段。

一次性完成这一切可以简化处理代码并将其与解析代码分开。

我尝试编写一个简单的解析器,使用String.Split用逗号分隔文件。据我发现,这是一种可怕的方法。它完全无法解析任何特殊情况,如双引号、换行符和其他特殊字符。

正如我所描述的,将 CSV 文件解析为二维数组的正确方法是什么?

Java 代码示例将不胜感激。 该数组可以是动态列表对象或向量或类似的东西,它只需可以使用两个索引器进行索引即可。


看一下共享 CSV?

CSVParser parser = new CSVParser(new FileReader(file));
String[] line;
while ((line = parser.getLine()) != null) {
     // process
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何正确地将 CSV 文件解析为二维数组? 的相关文章

随机推荐

  • Angularjs 中的克隆元素

    我需要复制一些输入字段才能处理来自客户端的数据 我已经用 jQuery 完成了http jsfiddle net m7R3f 1 HTML fieldset div class pure g entry div class pure u 1
  • 函数中的中断和继续

    def funcA i if i 3 0 print Oh No print i break for i in range 100 funcA i print Pass print i 我知道上面的脚本行不通 那么 如果我需要将带有brea
  • Javascript window.open() 函数打开链接而不使用弹出窗口拦截器

    JavaScriptwindow open 函数打开链接而不使用弹出窗口拦截器 我想从 javascript 打开一些链接window open 功能 但在 firefox chrome safari 上被阻止 如何通过 javascrip
  • 非英语语言的推送通知

    我已经成功实现了这段代码 有谁知道如何用 C 编写 Apple 推送通知提供程序 效果很好 但我有一个问题 有人可以帮助我如何发送希伯来语或阿拉伯语等非英语消息吗 如果字符串包含任何非英文字符 则不会发送 谢谢 我找到了解决方案 长度错了
  • 在 Python 中使用 urlopen() 防止“隐藏”重定向

    我在用美丽汤对于网页抓取 我在使用时遇到特定类型网站的问题urlopen 网站上的每个项目都有自己独特的页面 并且项目有不同的格式 例如 500 毫升 1 升 2 升 当我打开产品的 URL 时 www example com produc
  • 无法使用 fetchkml 函数将本地 KMZ 文件加载到具有 google Earth 插件的浏览器中

    我们有一个 KMZ 文件 可以很好地加载到 Google 地球桌面应用程序中 没有错误 当我们尝试使用 Google Earth 插件来做同样的事情时 它甚至不会从fetchKml功能 我们需要了解使用的任何特殊设置fetchKml在本地文
  • 如何使用 Qt 创建暂停/等待函数?

    我正在玩Qt 我想在两个命令之间创建一个简单的暂停 但它似乎不会让我使用Sleep int mili 而且我找不到任何明显的等待函数 我基本上只是制作一个控制台应用程序来测试一些类代码 这些代码稍后将包含在适当的 Qt GUI 中 所以现在
  • 编译器为内在函数生成的程序集的问题

    我正在使用英特尔 SSE AVX FMA 内在函数来实现某些数学函数的完美内联 SSE AVX 指令 给出以下代码 include
  • 在 BLE 中随机化 Mac 地址

    我制作了一款将 iOS 设备变成信标的应用程序 现在 当我从 Android 设备扫描 BLE 设备时 我在扫描列表中找到了该 iOS 设备 但问题是每次我都得到随机的 Mac 地址 所以 我的问题是 这种默认行为是否意味着获取随机 mac
  • pine 脚本中 := 和 = 运算符之间的区别

    我对 TradingView Pine 脚本非常陌生 我没有找到合适的参考来理解两者之间的区别 and 运营商 有人有参考或描述吗 提前致谢 用于声明和初始化变量 用于在初始化后为变量赋值 将其转换为 可变变量 任何不可变变量 follow
  • 如何在 iPhone 中裁剪图像

    我想做同样的事情this问题 在我的应用程序中 我想像在 Facebook 中进行图像裁剪一样裁剪图像 任何人都可以通过优秀教程的链接或任何示例代码来指导我 我提供的链接将完整描述我的要求 您可以创建具有任何属性的新图像 这是我的功能 女巫
  • 顺序索引的填充因子为 PK

    Yes fillfactor再次 我花了很多时间阅读 但无法决定哪种方案最适合每种情况 我不明白碎片何时以及如何发生 我正在将数据库从 MS SQL Server 迁移到 PostgreSQL 9 2 Case 1 在顺序 串行 PK 中每
  • Android 应用程序中的 JPEG 硬件解码支持

    我的 Android 应用程序需要在 Android 2 2 手机 及更高版本 上解码基于大分辨率的 JPEG 图像 目前我正在使用 BitmapFactory decodeStream API 即 SKIA 库来解码流 1 据我所知 SK
  • android.os.ServiceSpecificException:GPIO2_IO02 已在使用中(代码 16)

    我正在研究 android 的东西 Pico i MX7D I O 我得到了android os ServiceSpecificException GPIO2 IO02 已在使用中 代码 16 异常 这是什么意思 请帮我 我的示例程序是从克
  • Spring中有Spring惰性代理工厂吗?

    Wicket 有一个称为惰性代理工厂的设备 鉴于
  • 调整 ctypes 数组的大小

    我想调整 ctypes 数组的大小 如您所见 ctypes resize 无法正常工作 我可以编写一个函数来调整数组大小 但我想知道一些其他解决方案 也许我错过了一些 ctypes 技巧 或者也许我只是错误地使用了调整大小 名称 c lon
  • 在 Javascript 中向 css 样式属性添加 1

    我试图首先获取元素的 order 属性的值 然后在单击按钮时向其添加 1 问题是 我得到的是 11 而不是得到 1 再加上 1 再得到 2 运算符不应该添加这些值吗 我究竟做错了什么 carouselPrev addEventListene
  • 如何在 R 上为每个方面(条形图)注释不同的值?

    我想知道如何注释条形图中的每个方面 现在 我正在使用 geom signif 函数 该函数工作完美 只是它将一个面上的注释复制到另一个面上 我的代码是这样的 geom signif annotation c p 0 01 y positio
  • 指针运动。为什么数字这么高?为什么它以块而不是恒定流的形式打印信息?

    你好 我正在尝试编写一个程序 需要报告每个鼠标运动的位置 我已经打电话给XSelectInput 函数与PointerMotionMask面具 一切似乎都正常 但打印后的数字不会在每次移动后出现 它们以块的形式出现 并且也以块的形式出现ev
  • 如何正确地将 CSV 文件解析为二维数组?

    我正在尝试将 csv 文件解析为二维数组 其中每一行都是一个数据条目 每一列都是该条目中的一个字段 一次性完成这一切可以简化处理代码并将其与解析代码分开 我尝试编写一个简单的解析器 使用String Split用逗号分隔文件 据我发现 这是