Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java .txt文件在我的计算机上打开时似乎有所不同。在任何其他移动设备上似乎都可以_Java_Android_Eclipse_File Conversion - Fatal编程技术网

Java .txt文件在我的计算机上打开时似乎有所不同。在任何其他移动设备上似乎都可以

Java .txt文件在我的计算机上打开时似乎有所不同。在任何其他移动设备上似乎都可以,java,android,eclipse,file-conversion,Java,Android,Eclipse,File Conversion,我新制作的.txt文件有一个奇怪的问题 我的Android程序正在向.txt文件写入字符串 以下是我的方法: public void generateNoteOnSD(String sFileName, String sBody){ try { File root = new File(Environment.getExternalStorageDirectory(), "Grafy"); if (!root.ex

我新制作的.txt文件有一个奇怪的问题

我的Android程序正在向.txt文件写入字符串

以下是我的方法:

 public void generateNoteOnSD(String sFileName, String sBody){
        try
        {
            File root = new File(Environment.getExternalStorageDirectory(), "Grafy");
            if (!root.exists()) {
                root.mkdirs();
            }
            File gpxfile = new File(root, sFileName + ".txt");
            FileWriter writer = new FileWriter(gpxfile);
            writer.append(sBody);
            writer.append("**************\n");
            writer.flush();
            writer.close();
            Toast.makeText(this, "Saved", Toast.LENGTH_SHORT).show();
        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
    }
String s = "0 1 0 0 1 0\n1 0 1 0 1 0\n0 1 0 1 0 0\n0 0 1 0 1 1\n1 1 0 1 0 0\n0 0 0 1 0 0\n";

        generateNoteOnSD("test", s);
下面是我调用方法的方式:

 public void generateNoteOnSD(String sFileName, String sBody){
        try
        {
            File root = new File(Environment.getExternalStorageDirectory(), "Grafy");
            if (!root.exists()) {
                root.mkdirs();
            }
            File gpxfile = new File(root, sFileName + ".txt");
            FileWriter writer = new FileWriter(gpxfile);
            writer.append(sBody);
            writer.append("**************\n");
            writer.flush();
            writer.close();
            Toast.makeText(this, "Saved", Toast.LENGTH_SHORT).show();
        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
    }
String s = "0 1 0 0 1 0\n1 0 1 0 1 0\n0 1 0 1 0 0\n0 0 1 0 1 1\n1 1 0 1 0 0\n0 0 0 1 0 0\n";

        generateNoteOnSD("test", s);
问题是我的.txt文件看起来像这样(当我在手机上打开它时):

但是当我在计算机上打开此文件时,'\n'字符消失了。。。o、 o和文件如下所示:

0 1 0 0 1 01 0 1 0 1 00 1 0 1 0 00 0 1 0 1 11 1 0 1 0 00 0 0 1 0 0**********************

问题出在哪里(

在Windows操作系统中,换行符由
“\r\n”
(回车+换行符)组成,而在*NIX中,换行符只由
“\n”
组成。这就是为什么它在移动电话中工作的原因,移动电话可能运行在Linux内核上,而在Windows机器上则不工作

将换行符保存为
“\r\n”
,而不仅仅是
“\n”
,这不会造成真正的伤害,它将在Windows和Linux操作系统上正确显示

报告提供了关于这一问题的良好信息


这是一个方便的列表。您可以使用支持UNIX换行符的编辑器,而无需对文件进行更改。

尝试
\r\n
,因为这是回车符和换行符。我猜您是在使用记事本在PC上打开文件。改用写字板或记事本+:它们可以读取UNIX样式的换行符。