Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用空白活动时崩溃记事本应用程序_Java_Android - Fatal编程技术网

Java 使用空白活动时崩溃记事本应用程序

Java 使用空白活动时崩溃记事本应用程序,java,android,Java,Android,08-26 19:04:17.456 10081-10089/?E/art:向调试器发送答复失败:断管08-26 19:04:17.456 10081-10089/? I/art:调试器不再处于活动状态08-26 19:04:17.582 10081-10081/?I/InstantRun:启动即时运行服务器:是主服务器 过程08-26 19:04:17.628 10081-10081/?W/art:在Android 4.1之前, 方法android.graphics.PorterDuffCol

08-26 19:04:17.456 10081-10089/?E/art:向调试器发送答复失败:断管08-26 19:04:17.456 10081-10089/? I/art:调试器不再处于活动状态08-26 19:04:17.582 10081-10081/?I/InstantRun:启动即时运行服务器:是主服务器 过程08-26 19:04:17.628 10081-10081/?W/art:在Android 4.1之前, 方法android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.UpdatentFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList、android.graphics.PorterDuff$模式) 将错误地重写中的包私有方法 android.graphics.drawable.drawable 08-26 19:04:17.736 10081-10081/? D/AndroidRuntime:关闭VM 08-26 19:04:17.736 10081-10081/? E/AndroidRuntime:致命异常:主
进程:com.example.sayandeep.notepad,PID:10081
java.lang.RuntimeException:无法启动活动 ComponentInfo{com.example.sayandeep.notepad/com.example.sayandeep.notepad.MainActivity}: java.lang.NullPointerException:尝试调用虚拟方法“void” android.widget.EditText.setText(java.lang.CharSequence)“”在空 对象引用
在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 在android.app.ActivityThread.access$800(ActivityThread.java:151)
在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
位于android.os.Handler.dispatchMessage(Handler.java:102)
在android.os.Looper.loop(Looper.java:135)
在android.app.ActivityThread.main(ActivityThread.java:5254)上
在java.lang.reflect.Method.invoke(本机方法)
在java.lang.reflect.Method.invoke(Method.java:372)
在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
原因:java.lang.NullPointerException:尝试调用虚拟机 方法'void android.widget.EditText.setText(java.lang.CharSequence)' 在空对象引用上
在 com.example.sayandeep.notepad.MainActivity.onCreate(MainActivity.java:38) 在android.app.Activity.performCreate(Activity.java:5990)
在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 在android.app.ActivityThread.access$800(ActivityThread.java:151)
在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 位于android.os.Handler.dispatchMessage(Handler.java:102)
在android.os.Looper.loop(Looper.java:135)
在android.app.ActivityThread.main(ActivityThread.java:5254)上
在java.lang.reflect.Method.invoke(本机方法)
在java.lang.reflect.Method.invoke(Method.java:372)
在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)08-26 19:04:26.858 10081-10081/com.example.sayandeep.notepad I/进程: 发送信号。PID:10081信号:9

主要活动
package com.example.sayandeep.notepad;
导入android.os.Bundle;
导入android.support.design.widget.FloatingActionButton;
导入android.support.v7.app.AppActivity;
导入android.support.v7.widget.Toolbar;
导入android.view.view;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.widget.EditText;
导入android.widget.Toast;
导入java.io.BufferedReader;
导入java.io.File;
导入java.io.InputStream;
导入java.io.InputStreamReader;
导入java.io.OutputStreamWriter;
公共类MainActivity扩展了AppCompatActivity{
编辑文本内容;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
content=(EditText)findViewById(R.id.content);
Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar);
设置支持操作栏(工具栏);
FloatingActionButton fab=(FloatingActionButton)findViewById(R.id.fab);
fab.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
保存(“Note1.txt”);
}
});
setText((打开(“Note1.txt”));
}
公共作废保存(字符串文件名){
试一试{
OutputStreamWriter out=新的OutputStreamWriter(openFileOutput(文件名,0));
out.write(content.getText().toString());
out.close();
Toast.makeText(这是“已保存注释!”,Toast.LENGTH_SHORT.show();
}捕获(可丢弃的t){
Toast.makeText(这个,“异常:+t.toString(),Toast.LENGTH_LONG).show();
}
}
公共布尔文件存在(字符串文件名){
File File=getBaseContext().getFileStreamPath(文件名);
返回文件.exists();
}
公共字符串打开(字符串文件名){
字符串temp=“”;
如果(文件存在(文件名))
{
尝试
{
InputStream in=openFileInput(文件名);
if(in!=null)
{
InputStreamReader tmp=新的InputStreamReader(in);
BufferedReader读取器=新的BufferedReader(tmp);
字符串str;
StringBuilder buf=新的StringBuilder();
而((str=reader.readLine())!=null)
{buf.append(str+“\n”);}in.close();
temp=buf.toString();
}
}catch(java.io.FileNotFoundException e){}catch(Throwable t){
Toast.makeText(此,“异常:+t.toString(),Toast.LENGTH_LONG).show();}
}返回温度;
}
@凌驾
公共布尔onCreateOptions菜单(菜单
    this is what the android monitor is showing:
package com.example.sayandeep.notepad;

import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;

import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.EditText;
import android.widget.Toast;

import java.io.BufferedReader;
import java.io.File;

import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class MainActivity extends AppCompatActivity {
EditText content;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        content=(EditText)findViewById(R.id.content);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view)   {
               Save("Note1.txt");
            }
        });
        content.setText((Open("Note1.txt")));

    }
    public void Save(String filename)  {
        try {
            OutputStreamWriter out = new OutputStreamWriter(openFileOutput(filename, 0));
            out.write(content.getText().toString());
            out.close();
            Toast.makeText(this, "Note saved!", Toast.LENGTH_SHORT).show();
        } catch (Throwable t) {
            Toast.makeText(this, "Exception: " + t.toString(), Toast.LENGTH_LONG).show();
        }
    }
    public boolean FileExists(String filename) {
        File file=getBaseContext().getFileStreamPath(filename);
        return file.exists();
    }
    public String Open(String filename)  {
        String temp="";
        if(FileExists(filename))
        {
            try
            {
                InputStream in=openFileInput(filename);
                if(in!=null)
                {
                    InputStreamReader tmp=new InputStreamReader(in);
                    BufferedReader reader=new BufferedReader(tmp);
                    String str;
                    StringBuilder buf=new StringBuilder();
                    while((str=reader.readLine())!=null)
                    {buf.append(str+"\n");}in.close();
                    temp=buf.toString();

                }

            }catch(java.io.FileNotFoundException e){}catch(Throwable t){
                Toast.makeText(this, "Exception: " + t.toString(), Toast.LENGTH_LONG).show();}

    }return temp;
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }

}

#Activity_main.xml#
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.sayandeep.notepad.MainActivity">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="@dimen/fab_margin"
        app:srcCompat="@android:drawable/ic_menu_save"
        android:onClick="onClick"/>
</android.support.design.widget.CoordinatorLayout>
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.example.sayandeep.notepad.MainActivity"
tools:showIn="@layout/activity_main">
<EditText android:id="@+id/content"
android:layout_width="391dp"
android:layout_height="523dp"
android:hint="Type here..."
android:gravity="top"
android:inputType="textPersonName"
android:layout_centerVertical="true"
android:layout_alignParentStart="true" />

</android.support.constraint.ConstraintLayout>
<include layout="@layout/content_main"/>