【问题标题】:Android java : How to write string text and save it into txt.file [duplicate]Android java:如何编写字符串文本并将其保存到 txt.file [重复]
【发布时间】:2014-03-12 02:24:16
【问题描述】:

好的,到目前为止我已经成功创建了文件夹。在 CreateFolderActivity.java 以下为创建文件夹代码:

btn_cFolder.setOnClickListener(new OnClickListener() {       
  public void onClick(View v) 
            {
             String dateN = edit_date.getText().toString();

             new AlertDialog.Builder(DatePickerActivity.this, AlertDialog.THEME_HOLO_DARK)  

                .setTitle("Create Folder")
                .setMessage("Confirm to create " + dateN +" folder ?")
                .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {

                    public void onClick(DialogInterface dialog, int which) { 

                         Environment.getExternalStorageDirectory();
                         String dateN = edit_date.getText().toString();
                         edit_date.setTypeface(edit_date.getTypeface(), Typeface.BOLD_ITALIC);
                            File folder = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/CalendarNote/" + dateN);
                            boolean success = true;
                                if (!folder.exists()) {
                                    success = folder.mkdirs();
                                }
                                if (success) {
                                        Toast.makeText(getBaseContext(), "You have successfully created." , Toast.LENGTH_LONG ).show();
                                        Intent w = new Intent(DatePickerActivity.this, SelectTypeActivity.class);
                                        startActivity(w);


                                } else {
                                    Toast.makeText(getBaseContext(), "You have Failed to create." , Toast.LENGTH_LONG ).show();
                                }

                    }
                 })
                .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) { 
                        // do nothing
                    }
                 })
                .setIcon(R.drawable.ic_launcher)
                 .show();
            }
   });

而且我也成功地创建了 txt 文件。 但现在唯一的问题是路径位置我尝试了很多方法来连接这两个 将文件保存到文件夹中。到目前为止,我希望 txt 文件像这样 /CalendarNote/TheDateIPick/hello.txt 保存。

现在我只能保存到与 CalendarNote 相同的文件夹中。 以下代码是我修改但不成功的代码。请帮帮我。

public void SaveListener() {         
    imb_savefile = (ImageButton) findViewById(R.id.imb_savefile);

    imb_savefile.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

             edit_date = (EditText) findViewById(R.id.edit_date);

            String t = edit_title.getText().toString();
             new AlertDialog.Builder(WriteNoteActivity.this, AlertDialog.THEME_HOLO_DARK)
            .setTitle("Save Note")
            .setMessage("Confirm to save " + t +"?")
            .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int which) { 
             String content = edit_content.getText().toString();
             String title = edit_title.getText().toString();
             String dateN = edit_date.getText().toString();
             boolean success = true;
                 try {
                    File sdCardDir = Environment.getExternalStorageDirectory();  
                    File targetFile;
                    targetFile = new File(sdCardDir.getCanonicalPath()  
                            + "/CalendarNote/"+ dateN);
                    File file=new File(targetFile + "/"+title+".txt");

                    if(!targetFile.exists()){
                        success = targetFile.mkdir();  
                    }
                    RandomAccessFile raf = new RandomAccessFile(file, "rw");  
                    raf.seek(file.length());  

                    raf.write(content.getBytes());  
                    raf.close();  
                } catch (IOException e) {
                    e.printStackTrace();
                } 
                 if (success) {
                    Toast.makeText(getBaseContext(), "You have successfully created." , Toast.LENGTH_LONG ).show();



            } else {
                Toast.makeText(getBaseContext(), "You have Failed to create." , Toast.LENGTH_LONG ).show();
            }
                    //Toast.makeText(getBaseContext(), "Note have successfully saved." , Toast.LENGTH_LONG ).show();
                }
             })
            .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int which) { 

                    Toast.makeText(getBaseContext(), "Note Cancelled." , Toast.LENGTH_LONG ).show();
                }
             })
            .setIcon(R.drawable.ic_launcher)
             .show();
        }

    });

}

【问题讨论】:

  • 当然,为什么不呢?你试过什么?你知道什么?
  • 当然可以,但你应该先试试。
  • 请看我的问题对我来说非常紧急~我已经编辑了我的问题
  • @323go 你能帮我检查一下我的代码是否有路径问题
  • @tianwei 你能帮我检查一下我的代码是否有路径问题

标签: android


【解决方案1】:

【讨论】:

  • 好的谢谢我先试试
  • Android 将日志写入文本文件的建议与我所说的一样吗?
  • 我已经编辑了我的问题,请你帮我看看。关于路径有一个新问题。谢谢
猜你喜欢
  • 2015-04-06
  • 1970-01-01
  • 1970-01-01
  • 2010-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-25
相关资源
最近更新 更多