2012-03-18 2 views
0

SD 카드의 파일에 텍스트와 날짜를 출력하는 Android 앱을 작성했습니다.파일에 텍스트를 쓸 때 파일을 열 때 텍스트가 보이지 않는 이유는 무엇입니까?

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(); 


    } 
} 

내가 내 PC에 "idom.txt"- 파일을 열 때 문제가 저를 제공합니다 Ԁt 䴎 牡 ㄠ ⰸ㈠ ㄰ '갊 í 琅 ฀ 慍 ⁲ 㠱 〲 ㈱ਠ 경우는 정말 내가 쓴게 아니라 ... 어떤 제안 이요?

+0

콘솔이나 로그 파일에'aktIdo'를 쓰십시오. 네가 얻는 것이 String이 아니라고 확신한다. – jmort253

답변

0

ObjectOutputStream 클래스를 (를) 사용하셨습니다. writeObject 메소드는 스트림에 객체를 쓰는 데 사용됩니다. 이 참조 번호 Document을보십시오. 그것은 인간의 독서 형식이 아닌 이진 형식으로 작성하려고합니다.

나는 당신에게 PrintWriter 클래스를 사용하도록 제안합니다. PrintWriter는 문자 기반 클래스 중 하나입니다. 다음은 멋진 example입니다.

관련 문제