Когда я записываю текст в файл, почему я не вижу текст при открытии файла? - PullRequest
0 голосов
/ 18 марта 2012

Я написал приложение для Android, которое просто выводит текст и дату в файл на SD-карте.

public class MyWastedTimeActivity extends Activity {
    /** Called when the activity is first created. */
    @Override

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        EditText ujET=(EditText)findViewById(R.id.input);
        Button gomb=(Button)findViewById(R.id.button1);
        final String ujString=ujET.getText().toString();
        gomb.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {

                try {
                    commitToFile(ujString);
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        });


    }

private void commitToFile(String mit) throws IOException {
    String aktIdo = DateFormat.getDateInstance().format(new Date());
     String kiIr =aktIdo+" "+mit+"\n";

     FileOutputStream fos = null;
     ObjectOutputStream out = null;


      File root = Environment.getExternalStorageDirectory();


       fos = new FileOutputStream(  root + "/" +"idom.txt" ,true);

       out = new ObjectOutputStream( fos );
       out.writeObject( kiIr );
       out.close();   


     }
}

Проблема в том, когда я открываю файл "idom.txt" на моем компьютере, ондает мне: Ԁt 䴎 牡 ㄠ ⰸ㈠ ㄰ ′ 갊 í 琅 ฀ 慍 ⁲ 㠱 〲 ㈱ਠ ㈱ਠ когда это действительно не то, что я написал ... Любое предложение?

1 Ответ

0 голосов
/ 18 марта 2012

Вы использовали ObjectOutputStream Класс. Метод writeObject используется для записи объекта в поток. Посмотрите на эту ссылку Документ . Это собирается написать в двоичном формате, который не является удобочитаемой формой.

Предлагаю вам использовать PrintWriter Класс. PrintWriter является одним из символьных классов. Вот хороший пример .

...