【问题标题】:How can I read a line and split it to save it? And do the same for a second file如何读取一行并将其拆分以保存它?对第二个文件做同样的事情
【发布时间】:2019-11-20 14:42:17
【问题描述】:

我一直在尝试将我的 txt 文件读入 java,然后拆分两个整数列,然后将其保存到列表或数组中。我需要将这两个数字分开,因为我将上传第二个 txt 文件,其中我将有更多的数字,我需要从第一个文件列中添加或减去这些数字。

所以这是我的 txt 文件的示例: 文件 1:

0033 2000

2390 500

等等。

文件 2:

0033 2 400

3829 1 3020

等等。

第一个文件有两列,第二个文件有三列

说实话,我一点也不擅长 java。到目前为止,我只能读取文件并按原样打印它们。

import java.io.File;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;

public class test {

    public static void readlines(File f) throws IOException {
        FileReader fr = new FileReader(f);
        BufferedReader br = new BufferedReader(fr);
        String line;
        int NumberOfLines = 0;
        while ((line = br.readLine()) != null) {

          System.out.println(line); 
          NumberOfLines++;

        }

        System.out.println("Number of lines read: " + NumberOfLines);
        br.close();
        fr.close();

    }

    public static void main(String[] args) {
        File f = new File("filename1");
        File s = new File("filename2");
        try {
            readlines(f);
            readlines(s);
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

}

我知道我应该使用 .split("\t") 拆分数据,因为它是一个选项卡,但是如何将其保存到列数组中,以便以后可以在不同的类中将它们加在一起?我是否需要创建两个类来读取 file1 和第二个文件 2?之后我在主课上做了所有的添加?

任何想法在这里都会很好!很抱歉问了一些基本的东西,但是从 matlab 切换到 java 对我来说有点困难 D:

【问题讨论】:

  • 如果您询问如何将拆分值放入数组中,String.split() 已经做到了。 String[] array = String.split("\t") 会给你一个值数组,由 \t 分隔符分割。
  • @sleepToken 我明白我在拆分时做错了什么。

标签: java arrays list bufferedreader


【解决方案1】:

我要做的是让readlines(File f) 方法返回一个数组。数组(如果您不知道)是列表或(通常)类似的元素。例如,在您的情况下,该方法将返回一个字符串数组。 split() 方法返回一个字符串数组,其中每个元素都是拆分后的元素之一。例如:

String[] splitted = "Hello World!".split(' ');

在这种情况下,splitted 将是:["Hello", "World!"]

如果您让readlines(File f) 返回一个包含拆分读取内容的数组,那么您在主程序中所要做的一切(如果您想保留这个“矩阵”外观)就是将返回的值推送到另一个数组中。

我希望我解释得足够清楚^^

【讨论】:

  • 非常感谢,我想我现在明白了!
  • 如果您对此有任何其他问题,请随时回来! ^^
猜你喜欢
  • 2015-12-06
  • 1970-01-01
  • 2012-11-14
  • 2010-11-27
  • 2013-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多