简单的Android文件输出问题
我被一些简单得让人吃惊的事情缠住了。我正在尝试将几个变量写入一个文件,每个变量都在它自己的行上,这样我就可以在另一个方法中使用readLine来读取变量 代码如下:简单的Android文件输出问题,android,file,newline,Android,File,Newline,我被一些简单得让人吃惊的事情缠住了。我正在尝试将几个变量写入一个文件,每个变量都在它自己的行上,这样我就可以在另一个方法中使用readLine来读取变量 代码如下: package com.example.files2; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileWr
package com.example.files2;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.os.Environment;
import android.widget.Toast;
public class files2 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String string1 = "Hey you";
String string2 = "Is there anybody there";
String string3 = "Can you hear me";
setContentView(R.layout.main);
try{
File file = new File(Environment.getExternalStorageDirectory(), "file.txt");
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(string1);
writer.newLine();
writer.write(string2);
writer.newLine();
writer.write(string3);
writer.newLine();
writer.flush();
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}}
文件写得很好,但不是每个变量都在它自己的行上,我只得到一行,上面写着“嘿,你有人在吗?你能听到我说话吗?”
所以我猜。newLine()不起作用,但为什么
这个问题有一个简单的答案,还是一个更好的解决方法
谢谢大家,欢迎评论
乔你确定它不起作用吗?你在用Windows吗?我想象Android作为一个基于UNIX的操作系统正在编写
\n
,而不是像Windows所期望的那样编写\r\n
。如果您键入adb shell
,然后键入cat/sdcard/file.txt
,您会看到什么?如果这实际上只是旧的UNIX/DOS换行符差异的一种表现(即文件在基于Linux的Android设备上正确写入,但在Windows PC上没有正确呈现(比如在记事本中))然后,一个答案是使用Vim(请参阅)或另一个应用程序在PC上查看文件,该应用程序可以自动确定文件内容中的换行符(并在需要时保存为本机Windows/DOS格式)
另一种选择是直接在Android设备上查看文件内容,使用市场上免费提供的“文本编辑”等文本编辑器
希望这能有所帮助-如果我说的是显而易见的话,请道歉。啊!还有一些新的东西!你们是救生员!非常感谢你!