我有一些编程经验,但我没有使用android中的文本文件的经验。我正在使用android studio,并制作一个从文件中获取String
的应用程序,然后显示它。
我做了我的研究,根据android.developer.com我需要使用FileReader
,但我还是有一些问题:
1.我在哪个文件夹中放入.txt文件?
2.如何对FileReader
文件进行.txt
引用?
我搜索了这个网站和其他网站,有很多像我这样的问题,但没有人回答我的问题..
编辑: 有人可以给我整个代码/一步一步说明如何做到这一点。从哪里放置文件,到如何访问和创建一个字符串
答案 0 :(得分:0)
我将文本文件放在哪个文件夹中?
嗯,这完全取决于你。您甚至可以创建一个并自定义文件树。请注意,根目录可能因设备而异,因此强烈建议您从Environment.getExternalStorageDirectory()
例如,
File dir = new File(Environment.getExternalStorageDirectory()+"yourCustomFolder");
if(!dir.exists())
fileDir.mkdirs();
通过这种方式,您可以在手机上看到该文件夹已创建。
有关详细信息,例如在自定义文件夹中创建文件,可以参考this answer。
答案 1 :(得分:0)
编译:
compile group: 'org.apache.poi', name: 'poi', version: '3.0.1-FINAL'
以下是从 .xls 文件中读取文件的代码。 - 此代码段用于读取仅一个字段客户名称,您可以向其中添加更多单元格。
/**
* Method to Import XLS file to Database
*
* @param uriFile
*/
private void importCsvFileToDatabase(Uri uriFile) {
try {
InputStream is = getContentResolver().openInputStream(uriFile);
POIFSFileSystem myFileSystem = new POIFSFileSystem(is);
HSSFWorkbook myWorkBook = new HSSFWorkbook(myFileSystem);
HSSFSheet mySheet = myWorkBook.getSheetAt(0);
Iterator rowIter = mySheet.rowIterator();
boolean isFirstRow = true;
int i = 1;
while (rowIter.hasNext()) {
HSSFRow rowhead = mySheet.getRow((short) i++);
if (rowhead == null) {
break;
}
String customerName = "";
CustomerInfo customerInfodb = new CustomerInfo();
try {
customerName = rowhead.getCell((short) 0).toString();
customerInfodb.setCustomerName(customerName);
} catch (Exception e) {
customerInfodb.setCustomerName("");
Log.e("TAG", "err" + e.getMessage());
}
CustomerInfo.saveCustomerInfo(context, customerInfodb);
} catch (Exception e) {
Log.e("LOG", "err" + e.getMessage());
}
}