0

我有看起来像这样的字符串 -

String text = "item1, item2, item3, item4 etc..."

我编写了 java 代码将这些字符串写入文本文件,只需更改扩展名即可将其转换为 csv。逻辑是 -打印一个字符串,然后移动到新行并打印另一个字符串。

当测试字符串只有10-20 个项目时,文本文件中的输出是完美的。

但是,我真正的字符串每个都有大约 3000 个独特的项目。大约有20,000 个这样的字符串

当我将所有这些字符串写入文本文件时,它会变得一团糟。我看到3000 rows 而不是 20,000 rows

我认为这个问题不需要代码,因为它已经完成并经过测试。我只需要能够正确格式化我的数据。

对于那些想要查看代码的人 -

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;


public class Texty {

    public static void main(String[] args) {

        System.out.println("start");

        String str = "";
        String enter = System.getProperty( "line.separator" );

        for(int i = 0; i< 5; i++){
            str = str + i + ",";

        }

            str = str + 5; 
        System.out.println(str);

        FileWriter fw = null;
        File newTextFile = new File("C:\\filez\\output.txt");
        try {
            fw = new FileWriter(newTextFile);
        } catch (IOException e) {
            e.printStackTrace();
        }

        try {

            for(int i = 0; i < 10; i++){

             fw.write(str + enter);

            }

            fw.close();

        } catch (IOException iox) {
            //do stuff with exception
            iox.printStackTrace();
        }

        System.out.println("stop");

    }

}
4

1 回答 1

3

你是对的,10列和3000列没有区别,你只是有更长的行

10 行和 20,000 行之间也没有区别,只是你有更多的行。

虽然您可以在 Java 或文件系统中拥有大得多的文件,但某些旧版本的 excel 无法加载如此多的列(限制为 256 列)或如此大的文件(限制为大约 1 GB原始数据)

我会在另一个程序中检查文件是否正确,例如您编写的一个程序,您可能会发现所有数据都在那里。

如果数据不存在,则说明您有错误,Java、Windows 或 Linux 没有任何限制,可以解释您所看到的行为。

于 2013-05-17T05:44:27.077 回答