私は周りを検索しましたが、私の問題に合った解決策を見つけることができません。私はAndroidが初めてです。
csv ファイルを読み込んで編集するアプリを作成します。
これまでのところ、アセットフォルダーから csv を読み取るアプリがあります。これは私がそのために使用したコードです。Import.java コード。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
public class CSVAdapter extends ArrayAdapter<State>{
Context ctx;
public CSVAdapter(Context context, int textViewResourceId) {
super(context, textViewResourceId);
this.ctx = context;
//Load the data.
loadArrayFromFile();
}
@Override
public View getView(final int pos, View convertView, final ViewGroup parent){
TextView mView = (TextView)convertView;
if(null == mView){
mView = new TextView(parent.getContext());
mView.setTextSize(28);
}
mView.setText(getItem(pos).getName());
/*mView.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Toast.makeText(parent.getContext(), getItem(pos).getCapital(), Toast.LENGTH_SHORT).show();
}
});*/
return mView;
}
private void loadArrayFromFile(){
try {
InputStream is = ctx.getAssets().open("states.csv");
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = reader.readLine()) != null) {
String[] RowData = line.split(",");
State cur = new State();
cur.setName(RowData[0]);
cur.setCapital(RowData[1]);
this.add(cur);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
ご覧のとおり、inputStream は assets フォルダーです。ダウンロードやSDカードなどの外部ストレージでcsvファイルを検索できるようにしたいのですが、ファイルブラウザを開いて見つける方法がわかりません。
誰でも助けることができますか?
ありがとう!