繁体   English   中英

如何获得对txt文件的引用并从中获取字符串

[英]How to get a refference to a txt file and get a string from it

我有一些编程经验,但是我没有在android中处理文本文件的经验。 我正在使用android studio,并制作了一个从文件中获取String并显示它的应用程序。

我做了研究,根据android.developer.com,我需要使用FileReader ,但是我仍然有一些问题:

1.我将.txt文件放在哪个文件夹中?

2.如何对.txt文件进行FileReader引用?

我已经搜索了该站点和其他站点,并且有很多像我这样的问题,但是没有一个回答我的问题。

编辑:有人可以给我整个代码/逐步说明如何执行此操作。 从文件放置位置,到如何访问文件并从中创建字符串

我要将文本文件放在哪个文件夹中?

好吧,这完全取决于您。 您甚至可以创建一个并自定义文件树。 请注意,根目录在不同的设备中可能有所不同,因此强烈建议您从Environment.getExternalStorageDirectory()引用

例如,

File dir = new File(Environment.getExternalStorageDirectory()+"yourCustomFolder");
if(!dir.exists())
        fileDir.mkdirs();

这样,您可以在手机上看到已创建文件夹。

如需进一步信息,如创建文件到您的自定义文件夹,您可以参考答案。

编译

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());
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM