Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将数组内容写入文件?_Java_Arraylist_File Writing - Fatal编程技术网

Java 如何将数组内容写入文件?

Java 如何将数组内容写入文件?,java,arraylist,file-writing,Java,Arraylist,File Writing,我试图将两个数组列表的内容保存到一个学校项目的文件中,一个是integer类型,另一个是string类型。这是我现在拥有的。。。请记住,数组列表的变量名是字符串数组的list和整数数组的listquanity case ("6"): { final String FNAME = ("C:\\Users\\Neil\\Documents\\Eclipse Workspace\\Final Project Market Stocks\\stocks.

我试图将两个数组列表的内容保存到一个学校项目的文件中,一个是integer类型,另一个是string类型。这是我现在拥有的。。。请记住,数组列表的变量名是字符串数组的list和整数数组的listquanity

case ("6"):  
            {
           final String FNAME = ("C:\\Users\\Neil\\Documents\\Eclipse Workspace\\Final Project Market Stocks\\stocks.txt");

            PrintWriter bw = null;
            try 
            {
                bw = new PrintWriter(new File(FNAME));
                for (int g = 0; g<= list.length(); g++){
                    Printwriter.write();
                }

            }catch (IOException e) {
                e.printStackTrace ();
            }finally{
                if (bw != null){
                    bw.flush();
                    bw.close();
                }
            }
        }


        System.out.println("Saving...");                
        //System.exit(0);   
        break;
案例(“6”):
{
最终字符串FNAME=(“C:\\Users\\Neil\\Documents\\Eclipse Workspace\\final Project Market Stocks\\Stocks.txt”);
PrintWriter bw=null;
尝试
{
bw=新的PrintWriter(新文件(FNAME));

对于(int g=0;g您需要对您拥有的实例调用
write()
方法,这不是一个静态方法,并将数组的不同值传递给它:

for (int g = 0; g < list.length(); g++){
    bw.write(list.get(g));
    bw.write(" ");
    bw.write(listquanity.get(g));
    bw.write("\n");
}
for(int g=0;g
您创建了一个名为
bw
PrintWriter
类的实例,现在您想用它来编写一些东西。您需要使用
write()
或此实例的任何方法。例如:
bw.write(“String”)
。我建议您使用
print()
println()
方法,因为它们的工作方式与
System.out.println()中的方法相同,您应该熟悉这些方法

打印代码可能如下所示:

for (int i = 0; i < list.length(); i++){
    bw.println(list[i] + ", " + listquanity[i]);
}
for (int i = 0; i < list.length(); i++){
    bw.println(list.get(i) + ", " + listquanity.get(i));
}
for(int i=0;i
我希望这对你有帮助!祝你好运

编辑:如果要使用ArrayList,则如下所示:

for (int i = 0; i < list.length(); i++){
    bw.println(list[i] + ", " + listquanity[i]);
}
for (int i = 0; i < list.length(); i++){
    bw.println(list.get(i) + ", " + listquanity.get(i));
}
for(int i=0;i

这里唯一的区别是我们需要使用ArrayList的
get()
方法来访问元素。

具体来说,您发布的代码有什么问题?@ScottHunter问题在于列表的内容不会写入文件。当我们按“6”时为了保存它,文件保持空白,您的代码甚至没有编译,原因有二:没有方法写入,没有参数,方法不是静态的,因此无法在PrintWriterI上调用。对不起,我的意思是指定数组的ArrayLists@Squid所以它们根本不是数组,这是不同的;)我已经编辑过黄先生,这似乎有效,但是保存到文件中的唯一内容是null,null?我想知道您是否知道为什么会发生这种情况。谢谢!这意味着您的ArrayList中的元素没有初始化,或者换句话说是null。因此字符串concatation只计算
list.get(I)
null
。关于它们不存在的原因,我没有足够的信息。请调查一下。