0

我看到了类似的 issie

字符串中的换行符未写入文件

但它没有帮助我,这是我的代码

 try { 
           String StringBudy =String.format(mailBuddy,System.getProperty("line.separator")); 

            FileOutputStream fOut = openFileOutput("My_Sms.txt",
                                                    MODE_WORLD_READABLE);
            OutputStreamWriter osw = new OutputStreamWriter(fOut); 

            osw.write(StringBudy);
            osw.flush();
            osw.close();
        } catch (IOException ioe) {
            ioe.printStackTrace();
    }

任何想法为什么字符串中的换行符不写入文件?

4

2 回答 2

0

在创建使用 \n 换行的字符串时,请按照 windows 的要求使用 \r\n 。

于 2013-04-14T13:23:42.693 回答
0

String.format()只会用%s换行符替换第一个。

例如:

String.format("this%sis%sa%stest", System.getProperty("line.separator"))

将产生

this
isatest

%s一种解决方案是用换行符替换所有出现的 :

String str = mailBuddy.replace("%s", System.getProperty("line.separator"));
于 2013-04-13T23:21:30.247 回答