【发布时间】:2012-05-27 01:02:00
【问题描述】:
基本上我有两个 sn-ps 代码。有人调用一个填充并返回ArrayList 的函数,但我遇到了一些问题。下面是两个代码:
-
定义接收
ArrayList,然后捕获返回的ArrayList。ArrayList agentArray = new ArrayList(); agentArray = agentListings(strInput);
-
构建 ArrayList 然后返回它。
public static ArrayList agentListings(String strInput) throws FileNotFoundException { File inputFile = new File(strInput); Scanner in = new Scanner(inputFile); ArrayList<String> agentArray = new ArrayList<>(); while (in.hasNextLine()) { agentArray.add(in.next()); in.next(); in.next(); in.next(); } Collections.sort(agentArray); in.close(); return agentArray; }
问题是当我回到我试图将其放入ArrayList 的位置时,它似乎工作正常。但是当我尝试将其写入文件时,它会从此代码中引发此错误。
out.write(agentArray.get(1));
我正在写入一个文件,而不是使用简单文本等的缓冲写入器。
基本上我不知道如何将 ArrayList“agentArray”写入文件。我在做什么明显的错误?
===============================================
编辑:
忘记包含错误。当我将鼠标悬停在 out.write(agentArray.get(1)); 上时,agentArray 会以红色下划线显示,错误是
找不到符号符号:变量 agentArray
位置:class blabla.blabla
【问题讨论】:
-
错误是什么?你知道,错误通常会提供很多信息。
-
我假设您想将字符串作为文本行写入文件中?如果是这样,您应该能够制作某种 Reader 和 Writer 来获取字符串,然后将它们一一添加到文本文件中。在尝试将其内容写入文件之前,您是否确保您的 arraylist 确实获得了内容?
-
什么是错误,你真的确定你填写了 ArrayList 正确吗?您是否控制了其中的值?尝试使用 print.out 写出 ArrayList 中的值或使用调试控制。
-
一开始为什么要新建一个ArrayList ();哪个从未使用过,但会立即被方法调用的结果覆盖? out.write 在哪里?如果连接到返回的List,我们从代码中是看不到的。