当前位置: 首页 > 知识库问答 >
问题:

如何在android中读取txt文件?[重复]

邬宏扬
2023-03-14
package com.example.popword;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import java.io.File;
import java.util.Scanner;

public class ReadText1 extends Activity {
    TextView textview;
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textview = (TextView) findViewById(R.id.textView);
        try (Scanner scanner = new Scanner(new File("C:\\Users\\UOU\\Desktop\\word.txt"))) {
            while (scanner.hasNext()) {
                textview.setText(scanner.nextLine());
            }
        } catch (Exception e) {
            System.err.println("Exception occurred!");
        }
    }
}

=================================================================================== 2019-11-13 20:07:44.224 1004-1004/TransactionExecutor.java:68E/cklee:android.app.ActivityThread(H.handleMessage)ActivityThread.java:1808(android.os.Handler.dispatchMessage)Handler.java:106(android.os.Looper.loop)Looper.java:193(android.app.ActivityThread.main)ActivityThread.java:6669(java.lang.reflect.Method.invoke)com.android.internal.os.RuntimeInit(MethodAndArgsCaller.run)android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048)android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)android.app.servertransaction.TransactionExecutor.execute(com.example.popword)com.example.popword.ReadText1.printStackTraceReadText1.java:29(com.example.popword.ReadText1.onCreate)ReadText1.java:22(android.app.Activity.performCreate)Activity.java:7136(android.app.Activity.performCreate)Activity.java:7127(android.app.Instrumentation.callActivityOnCreate)Instrumentation.java:1271(原生方法)android.app.ActivityThread.performLaunchActivity$ActivityThread.java:2893

共有3个答案

施飞驰
2023-03-14

您可以直接从存储或SD卡中读取文件,请按照以下步骤操作:

1.将这两个权限添加到项目清单文件中

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

2.创建以下函数

private void ReadTxtFile(File txtfilepath) {
    if (txtfilepath.exists()) {
        StringBuffer txt = new StringBuffer();
        try {
            BufferedReader br = new BufferedReader(new FileReader(txtfilepath));
            String line;

            while ((line = br.readLine()) != null) {
                txt.append(line);
                txt.append('\n');
            }
            br.close();
        } catch (IOException e) {
            Log.e("Exception:",e.toString());
        }

        Log.e("File Text:",txt.toString());// "txt" variable contian your file text
    }
}

随时随地调用函数,并提供文本文件路径作为函数参数

 ReadTxtFile(new File("/sdcard/Download/sample.txt"));
顾亦
2023-03-14

你怎么能读取你电脑上的文件呢?网上有很多教程向你解释如何在android中读写文件。我会用BufferedReader代替Scanner。

郎鹤龄
2023-03-14

你需要把你的txt文件放在Android项目包里。你可以把它放在:

  • 资产文件夹,然后:
AssetManager am = context.getAssets();
InputStream is = am.open("word.txt");
  • “资源”文件夹 ( 分辨率/原始 ) 然后:

InputStream是=getResources().openRawResource(R.raw.word);

 类似资料:
  • 我正试图编写一个程序,读取网络中相互交互的节点列表。它以以下格式写入文本文件: 这表示节点1与节点2和节点3交互,节点2仅与节点3交互,等等。 该程序将能够读取该文件,并将删除任何重复的交互,并且如果我输入节点的名称,将能够向我返回节点与其他节点的交互次数。然而,我对Java非常陌生,我首先尝试让它读入文件,尽管我的代码目前没有读入文件。以下是我迄今为止的代码: 任何关于如何解决此问题的帮助都将不

  • 我正在编写一个程序,使用一个文件中的30个分数,计算出最低、最高和平均分数。我很难理解如何编写循环语句来读取每个等级并更新最低/最高等级,并在读取下一个等级之前将该值添加到总和。 谢谢想出来了:

  • 我试着用JS读txt文件。所以我用这个代码。 我的txt文件看起来: 当我输入代码:时,我的程序工作得很好,但我想用ip Adres打开txt文件。 但是我的应用程序不能读取txt文件。

  • 我想从文本文件中读取文本。在下面的代码中,会发生异常(这意味着它会转到catch块)。我将文本文件放在应用程序文件夹中。我应该把这个文本文件(mani.txt)放在哪里才能正确阅读?

  • 问题内容: 如何打开.txt文件并读取由输入或空格分隔的数字到数组列表中? 问题答案: 读取文件,将每一行解析为整数并存储到列表中:

  • 我正在保存一个excel文件到设备(Android7)的存储,现在我想当用户点击按钮时打开excel文件,但现在当按钮点击应用程序会崩溃,而当im到我的存储和im打开文件直接在我的应用程序之外没有问题!!如果我的代码行错了,请帮忙,谢谢 日志:Android.os.FileUriExposedException:file:///storage/emulated/0/MessangerApp/Mes