Java 从文本文件读取和显示数据
我正试图学习如何创建应用程序,但一开始就被卡住了。我读了很多关于这个问题的话题,但仍然无法找到如何做到这一点。我想我从文本文件中读取的部分是正确的,但不知道如何显示它。有人能帮我吗?谢谢 MainActivity.javaJava 从文本文件读取和显示数据,java,android,Java,Android,我正试图学习如何创建应用程序,但一开始就被卡住了。我读了很多关于这个问题的话题,但仍然无法找到如何做到这一点。我想我从文本文件中读取的部分是正确的,但不知道如何显示它。有人能帮我吗?谢谢 MainActivity.java public class MainActivity extends AppCompatActivity { public void main(String[] args) throws Exception { FileReader file = new FileRe
public class MainActivity extends AppCompatActivity {
public void main(String[] args) throws Exception
{
FileReader file = new FileReader("C:/Users/Eothen/AndroidStudioProjects/FutbolBorsasi/app/src/main/res/infobank.txt");
BufferedReader reader = new BufferedReader(file);
String line = reader.readLine();
while (line != null)
{
line = reader.readLine();
System.out.println("line");
}
reader.close();
}
activity_main.xml
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/nameTextView"
android:id="@+id/nameTextView"
android:layout_below="@+id/ppImageView"
android:layout_centerHorizontal="true"
android:textSize="25sp"
android:layout_marginTop="25dp"
android:background="@drawable/backgroundtextview"
android:gravity="center_vertical|center_horizontal" />
编辑:这起作用了
public class MainActivity extends AppCompatActivity {
String line;
TextView view;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AssetManager am = getAssets();
try {
InputStream is = am.open("test.txt");
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
line = reader.readLine();
view = (TextView) findViewById(R.id.nameTxt);
view.setText(line);
} catch (Exception e) {
e.printStackTrace();
}
}
您应该在文本视图中显示它,而不是在控制台中
比如:
和System.out.printlnline;将显示行,而不是该文件的文本,您必须删除
编辑:别忘了将R.id.counter更改为R.id
编辑2:
试试这个:
public void main(String[] args) throws Exception
{
FileReader file = new FileReader("C:/Users/Eothen/AndroidStudioProjects/FutbolBorsasi/app/src/main/res/infobank.txt");
BufferedReader reader = new BufferedReader(file);
String line = reader.readLine();
while (line != null)
{
line = reader.readLine();
TextView view = (TextView) findViewById(R.id.nameTextView);
view.setText(line);
}
reader.close();
}
您希望如何从emulator读取C驱动器上的文件?
试试看这里有很多错误。第一个是在android中没有public void mainString[]args,但是您必须在清单中声明您的主要活动,并重写activity类提供的onCreate、onStart等方法。其次,android设备或android emulator的文件系统与您的pc文件系统不同,那么C:/Users/Eothen/AndroidStudioProjects/FutbolBorsasi/app/src/main/res/infobank.txt是错误的
我建议你先开始阅读一些教程,网上有很多可用的教程,然后再试一次。-有更多相关信息。请将文本文件放在Android项目下的/assets目录中。使用AssetManager类访问它。AssetManager am=context.getAssets;InputStream=am.opentest.txt;或者,您也可以将该文件放在/res/raw目录中,在该目录中,该文件将被索引,并且可以通过R文件中的id访问:InputStream is=getResources.openRawResourceR.raw.test;如果您需要从外部存储读取文件,而不是从应用程序读取文件,请尝试以下操作:
public class MainActivity extends AppCompatActivity {
String line;
TextView view;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AssetManager am = getAssets();
try {
InputStream is = am.open("test.txt");
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
line = reader.readLine();
view = (TextView) findViewById(R.id.nameTxt);
view.setText(line);
} catch (Exception e) {
e.printStackTrace();
}
}
line = reader.readLine();
System.out.println("line");
TextView view = (TextView) findViewById(R.id.counter);
view.setText(line);
public void main(String[] args) throws Exception
{
FileReader file = new FileReader("C:/Users/Eothen/AndroidStudioProjects/FutbolBorsasi/app/src/main/res/infobank.txt");
BufferedReader reader = new BufferedReader(file);
String line = reader.readLine();
while (line != null)
{
line = reader.readLine();
TextView view = (TextView) findViewById(R.id.nameTextView);
view.setText(line);
}
reader.close();
}