2011-03-16 64 views
0


我想从打印到文件的EditText文本。因此,当用户输入消息并点击提交按钮时,消息被写入文件。
这里是我的代码:写入文本文件 - 安卓

package com.getText.android; 

import java.io.BufferedWriter; 
import java.io.File; 
import java.io.FileWriter; 
import java.io.IOException; 

import android.app.Activity; 
import android.os.Bundle; 
import android.os.Environment; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.view.inputmethod.EditorInfo; 
import android.widget.Button; 
import android.widget.EditText; 

public class getText extends Activity { 

public EditText ET; 
public Button button1; 
public String input; 


/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    ET = (EditText) findViewById(R.id.edittext); 
    ET.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI); 

    button1 = (Button)findViewById(R.id.btnClickMe); 
    button1.setOnClickListener(btnListener); 

} 

private OnClickListener btnListener = new OnClickListener(){ 

    public void onClick(View v){ 

     input = ET.getText().toString(); 

     try{ 

     File file = new File(Environment.getExternalStorageDirectory(), "fileOut.txt"); 

     BufferedWriter writer = new BufferedWriter(new FileWriter(file,true)); 

     writer.write(input); 
     writer.newLine(); 
     writer.flush(); 
     writer.close(); 
     } 

     catch (IOException e) { 
      e.printStackTrace(); 
     } 

    } 
}; 

} 

应用程序运行得很好,但文件还没有生成!有人能告诉我什么是错的吗? :)

回答

0

我不知道这是否是必要的,但你试图做的事:

file.createNewFile(); 

创建FileWriter过吗?

一般来说,你应该尝试登录异常:

Log.e("getText", e.getMessage()); 

可惜e.printStackTrace()不会使它成为logcat的。