事情的起因是我在一个Data.txt文件里有如下数据:
这是我在main里的代码:
GetLatAndLngByBaidu b = new GetLatAndLngByBaidu("");
List list = MockUtil.read("D:\Data\gongshang.txt");
// for (String string : list) {
// try {
// System.out.println(string + ":" + b.getByName(string));
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// 将经度纬度写入到文件里面
File file = new File("D:\Data\aaa.txt");
OutputStream ot = null;
Map<String, List> map = new HashMap<String, List>();
ot = new FileOutputStream(file, true);
byte[] by = null;
for (int i = 0; i < list.size(); i++) {
String string = list.get(i);
string = string.replaceAll(",", "\r\n,");
String[] str = string.split(",");
List<String> listId = null;
List<String> listNa = null;
List<String> listlatlng = null;
if (map.get("1") == null) {
// listId = new Vector();
listId = new ArrayList();
}
listId.add(str[0]);
map.put("1", listId);
if (map.get("2") == null) {
listNa = new ArrayList();
}
listNa.add(str[1]);
map.put("2", listNa);
if (map.get("3") == null) {
listlatlng = new ArrayList();
}
listlatlng.add(str[2]);
map.put("3", listlatlng);
for (int j = 0; j < 3; j++) {
for (String string2 : (ArrayList<String>) map.get((j + 1) + "")) {
by = string2.getBytes();
ot.write(by, 0, by.length);
ot.flush();
}
}
}
if (ot != null) {
ot.close();
}
}
---------------我是分割线-----------------------------------------------------------
<3>然后就报错了:
![图片说明](https://img-ask.csdn.net/upload/201612/30/1483059288_111618.png)
<4>我在debug下调试:
![图片说明](https://img-ask.csdn.net/upload/201612/30/1483059514_873608.png)
<5>后面的就是按一次F6他就加一次:
![图片说明](https://img-ask.csdn.net/upload/201612/30/1483059911_437594.png)
<6>我试过向量了,没有用。还有就是可以成功写道我要写入的aaa.txt里:
![图片说明](https://img-ask.csdn.net/upload/201612/30/1483060070_265990.png)