我用的存储不是数据库,是txt文本,我已经写好怎么读取txt文本了,也写好怎么将txt文本保存在临时list中,我现在想将从list读取前三行改成我要输入空格,再将整体list写入txt文件中,将list进行清空,全部代码.
第1个回答 2013-06-21
public ArrayList<String> translate(ArrayList<String> list) {
if (list.size() >= 3) {
list.set(0, "");
list.set(1, "");
list.set(2, "");
}
return list;
}追问
//或者一个一个的删除
for(int i = 0; i < list.size();i++){
list.remove(i);
}追问
if (list.size() >= 3) {
list.set(0, "");
list.set(1, "");
list.set(2, "");
}
return list;
}
public void writeFile(ArrayList<String> list, String path) {
BufferedWriter bw = null;
try {
File file = new File(path);
if (!file.exists()) file.createNewFile();
bw = new BufferedWriter(new FileWriter(file));
StringBuffer sb = new StringBuffer();
Iterator<String> it = list.iterator();
while(it.hasNext()) {
sb.append(it.next()+"\n");
}
list.clear();
bw.write(sb.toString());
bw.flush();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (bw != null) bw.close();
bw = null;
} catch (IOException e) {}
}
}追问
*
* @param list 集合
* @param begin 开始
* @param length 长度
* @return
*/
public static ArrayList<String> translate(ArrayList<String> list, int begin, int length) {
if (list.size() >= length + begin) {
for (int i = 0; i < length; i++) {
list.set(begin, "");
begin++;
}
}
return list;
}追问
for(int i = 0;i<list.size();i++) {
if(list.get(i).equals(value)){
System.out.println(i);
}
}
}本回答被提问者采纳
if (list.size() >= 3) {
list.set(0, "");
list.set(1, "");
list.set(2, "");
}
return list;
}追问
再将整体list写入txt文件中,将list进行清空,这步怎么代码怎么写
追答list = new ArrayList();// 可以这样清空//或者一个一个的删除
for(int i = 0; i < list.size();i++){
list.remove(i);
}追问
再将整体list写入txt文件中这步怎么代码怎么写,如果是定义变量等于其中一行数据之下两行加定义变量等于的行为空代码怎么写
追答评论正解
public ArrayList<String> translate(ArrayList<String> list) {if (list.size() >= 3) {
list.set(0, "");
list.set(1, "");
list.set(2, "");
}
return list;
}
public void writeFile(ArrayList<String> list, String path) {
BufferedWriter bw = null;
try {
File file = new File(path);
if (!file.exists()) file.createNewFile();
bw = new BufferedWriter(new FileWriter(file));
StringBuffer sb = new StringBuffer();
Iterator<String> it = list.iterator();
while(it.hasNext()) {
sb.append(it.next()+"\n");
}
list.clear();
bw.write(sb.toString());
bw.flush();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (bw != null) bw.close();
bw = null;
} catch (IOException e) {}
}
}追问
如果是定义变量等于其中一行数据之下两行加定义变量等于的行为空代码怎么写,而不是固定的前三行为空
追答/***
* @param list 集合
* @param begin 开始
* @param length 长度
* @return
*/
public static ArrayList<String> translate(ArrayList<String> list, int begin, int length) {
if (list.size() >= length + begin) {
for (int i = 0; i < length; i++) {
list.set(begin, "");
begin++;
}
}
return list;
}追问
怎么查找想的数据在第几行,代码怎么写
追答public static void find(ArrayList<String> list, String value) {for(int i = 0;i<list.size();i++) {
if(list.get(i).equals(value)){
System.out.println(i);
}
}
}本回答被提问者采纳