Java 为什么在Android studio中尝试打开inputstream时会出现错误未处理异常?(代码张贴在描述中)
我正在尝试以inputstream的形式读取文件,以便用其他数据填充该文件。然后,这些数据将被发送到第二个活动,该活动将打开数据并将其显示在屏幕上这是我的代码Java 为什么在Android studio中尝试打开inputstream时会出现错误未处理异常?(代码张贴在描述中),java,android,android-studio,Java,Android,Android Studio,我正在尝试以inputstream的形式读取文件,以便用其他数据填充该文件。然后,这些数据将被发送到第二个活动,该活动将打开数据并将其显示在屏幕上这是我的代码 package com.example.daniel.finalproject; import android.content.Intent; import android.content.res.AssetManager; import android.net.Uri; import android.renderscript.Scri
package com.example.daniel.finalproject;
import android.content.Intent;
import android.content.res.AssetManager;
import android.net.Uri;
import android.renderscript.ScriptGroup;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import com.google.android.gms.appindexing.Action;
import com.google.android.gms.appindexing.AppIndex;
import com.google.android.gms.appindexing.Thing;
import com.google.android.gms.common.api.GoogleApiClient;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
public class Secondactivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.secondactivity);
}
public void Proceed(View view) {
AssetManager am = getAssets();
InputStream is = am.open("madlibsimple.txt");
Story story = new Story(is);
EditText editText = (EditText)findViewById(R.id.word);
String text;
story.toString();
while (!story.isFilledIn()) {
story.read(is);
story.getNextPlaceholder();
text = editText.getText().toString();
story.fillInPlaceholder(text);
}
Intent intent = new Intent(this, Thirdactivity.class).putExtra("story",story);
startActivity(intent);
}
}
但是这一行:InputStream=am.open(“madlibsimple.txt”)代码>
返回错误。madlibsimple.txt在assetsfolder中,但我
不知道出了什么问题。任何帮助都将不胜感激。打开(字符串文件)
可能会抛出错误(我希望IOException
),您必须用
try {
AssetManager am = getAssets();
InputStream is = am.open("madlibsimple.txt");
Story story = new Story(is);
EditText editText = (EditText)findViewById(R.id.word);
String text;
story.toString();
while (!story.isFilledIn()) {
story.read(is);
story.getNextPlaceholder();
text = editText.getText().toString();
story.fillInPlaceholder(text);
}
Intent intent = new Intent(this, Thirdactivity.class).putExtra("story",story);
startActivity(intent);
} catch (Exception e) {
e.printStacktrace();
}
声明
这整个主题不是关于什么出错,而是什么可能出错
有关异常和错误处理主题的更多信息,请单击我相信错误已经解决,但我仍然在madlipsimple.txt下看到一条卷曲的线,表示我犯了一个我没有犯过的错误。我想这就是我的程序在第二次活动中崩溃的原因。这几乎是我的第二个活动代码String in=getIntent().getStringExtra(“故事”);TextView TextView=(TextView)findViewById(R.id.TextView);textView.append(在中);对不起,我弄错了。您必须在继续函数中包含所有内容,但这并不能改变您必须捕获getAssets()引发的异常的事实;仍然坚持文件名不正确,尽管您曾经创建过文件并向其写入数据吗?每次播放的文件名是否相同?第二个活动中的代码:String in=getIntent().getStringExtra(“故事”);TextView TextView(TextView)findViewById(R.id.TextView);textView.append(在中);我还是不确定,你想做什么。是否要将数据从一个活动发送到另一个活动?