Siv*_*iva -4 java string android
我试图将字符串添加到android中的csv文件
所以根据它要求添加的语法,String []但我添加了下面的行
String [] s1;
s1=c2.getString(c2.getColumnIndex("Sname"));
Run Code Online (Sandbox Code Playgroud)
从cursot中重新获取值并将其存储在中 s1
上面给我的线 String and String[]
Type mismatch: cannot convert from String to String[]
Run Code Online (Sandbox Code Playgroud)
专家请解释我之间的区别String[]..还有什么我可以转换为writeline
我是android和java的新手..如果它是一个基本问题,请道歉.
谢谢你的时间
编辑.....................................
我能够存储但无法存储String []csv类.
CSVWriter export=new CSVWriter(new FileWriter("/sdcard/"+stock+".csv"));
export.writeAll(s1, true);
Run Code Online (Sandbox Code Playgroud)
错误:
The method writeAll(List<String[]>, boolean) in the type
CSVWriter is not applicable for the arguments (String[], boolean)
Run Code Online (Sandbox Code Playgroud)
String是单个String对象String []是String对象的数组.问题是您正在尝试将String对象添加到String数组而不指定索引.
你可以这样做:
String [] s1 = new String[1];
s1[0]=c2.getString(c2.getColumnIndex("Sname"));
Run Code Online (Sandbox Code Playgroud)
只是一个示例,或者您可以只创建一个String对象而不是String数组:
String s1;
s1=c2.getString(c2.getColumnIndex("Sname"));
Run Code Online (Sandbox Code Playgroud)
基本上,如果要使用数组,则必须指定该数组的索引来存储对象,因为数组中存储了多个对象,每个对象都有自己的索引.
试着这样做:
ArrayList<String[]> csvExport = new ArrayList<String[]>();
csvExport.add(s1);
CSVWriter export=new CSVWriter(new FileWriter("/sdcard/"+stock+".csv"));
export.writeAll(csvExport, true);
Run Code Online (Sandbox Code Playgroud)
这只会在你的csv文件中添加一行.如果需要多行,则需要创建多个String []并将每个String []添加到ArrayList csvExport.
可以将String []数组视为列,例如:
String[] columnNames = new String[2];
columnNames[0] = "ID";
columnNames[1] = "Name";
String[] person1 = new String[2];
person1[0] = "1";
person1[1] = "George";
ArrayList<String[]> csvExport = new ArrayList<String[]>();
csvExport.add(columnNames);
csvExport.add(person1);
CSVWriter export=new CSVWriter(new FileWriter("/sdcard/"+stock+".csv"));
export.writeAll(csvExport, true);
Run Code Online (Sandbox Code Playgroud)
上面的代码会给你一个像这样的csv文件:
ID名称
1乔治