java - 无法从 java 中读取文件(困难格式)

标签 java file io

我正在尝试从文件中读取,并将值存储在变量中。问题是文件中的每一行都是整数和字符串的混合,它们之间的空格/制表符数量不均匀。我知道该行中的前 4 个元素是什么,但随后有一系列长度不同的数字(但这些数字以 0 结尾)。我尝试了一些不同的方法,但我似乎无法做到正确。首先我尝试一行一行读取,看到空格就拆分,然后把不包含空格的值存入一个新的数组。这没有用,因为它没有 split “足够好”。数组中的一个索引可以由一个字符串、许多空格和一个 int 组成。我已经尝试过其他一些变体,但我似乎想不出一个好方法。有没有人可以给我一些关于如何阅读此类文件的指示?

这是文件中一行的示例: 7 地毯 8 4 5 9 1 2 0

例。拆分:

while (in.hasNextLine()) {
   line = in.nextLine();
   String[] splitLine = line.split(" ");
}

我也尝试过使用 split("\t")

最佳答案

尝试替换

line = line.split(" ");

line.split("\\s+");

这将根据空格而不是单个空格来拆分行。这意味着它将占用多个空格、制表符等。

关于java - 无法从 java 中读取文件(困难格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26137942/

相关文章:

java - 在java中读取格式化的文本文件

windows - 如何使 CreateFile 尽可能快

Python Pickle 在 Windows 中加载时崩溃

java - Python脚本参数化

java - ExchangeFilterFunction 在 WebClient react 流之外执行代码?

python - Scrapy 不启用我的 FilePipeline

java - 使用 `Replace()` 方法不会替换 Apache POI 中的文本

java - Android 登录 Activity 后重定向

java - 如何在 Servlet 中调用 java Rest WebService

c - 如何将一个C文件分成多个文件