Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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 “我如何替换?”\";加上\r\n“;在groovy?_Java_String_Groovy - Fatal编程技术网

Java “我如何替换?”\";加上\r\n“;在groovy?

Java “我如何替换?”\";加上\r\n“;在groovy?,java,string,groovy,Java,String,Groovy,我的groovy程序创建了一个csv,该csv为新行\n创建。但客户在运行windows时需要\r\n 我知道这个问题在这里等了很久才得到回答 此处的此脚本不会将\n替换为\r\n。\n只会保持打开状态 newline = System.getProperty("line.separator"); for (int i = 0; i < dataContext.getDataCount(); i++) { InputStream is = dataConte

我的groovy程序创建了一个csv,该csv为新行\n创建。但客户在运行windows时需要\r\n

我知道这个问题在这里等了很久才得到回答

此处的此脚本不会将\n替换为\r\n。\n只会保持打开状态

    newline = System.getProperty("line.separator");
    for (int i = 0; i < dataContext.getDataCount(); i++) {
        InputStream is = dataContext.getStream(i);
        Properties props = dataContext.getProperties(i);

        reader = new BufferedReader(new InputStreamReader(is));
        outData = new StringBuffer();
        lineNum = 0;

        while ((line = reader.readLine()) != null) {
            line.replace(newline, "\r\n")
            outData.append(line);


        }
        is = new ByteArrayInputStream(outData.toString().getBytes("UTF-8"));

        dataContext.storeStream(is, props);
    }
newline=System.getProperty(“line.separator”);
对于(int i=0;i
您正在使用readLine读取文件的一行-这已经为您删除了行尾

您需要做的是像现在一样一次读取一行-然后在每行之间追加\r\n,而不是替换

   while ((line = reader.readLine()) != null) {
        outData.append(line);
        outData.append("\r\n");
    }

您正在使用readLine以一行的形式读取文件-这已经为您删除了行尾

您需要做的是像现在一样一次读取一行-然后在每行之间追加\r\n,而不是替换

   while ((line = reader.readLine()) != null) {
        outData.append(line);
        outData.append("\r\n");
    }

您正在使用readLine以一行的形式读取文件-这已经为您删除了行尾

您需要做的是像现在一样一次读取一行-然后在每行之间追加\r\n,而不是替换

   while ((line = reader.readLine()) != null) {
        outData.append(line);
        outData.append("\r\n");
    }

您正在使用readLine以一行的形式读取文件-这已经为您删除了行尾

您需要做的是像现在一样一次读取一行-然后在每行之间追加\r\n,而不是替换

   while ((line = reader.readLine()) != null) {
        outData.append(line);
        outData.append("\r\n");
    }

作为旁注,您应该始终在finally{…}块中关闭()您的流。但是,如果要使用正确的行分隔符生成文件,只需在生成文件本身的脚本中设置正确的行分隔符,只需使用:System.setProperty(“line.separator”,“\r\n”)作为旁注,您应该始终在finally{…}中关闭()流如果要从第二个命令转换文件,请使用dos2unix之类的命令。但是,如果要使用正确的行分隔符生成文件,只需在生成文件本身的脚本中设置正确的行分隔符,只需使用:System.setProperty(“line.separator”,“\r\n”)作为旁注,您应该始终在finally{…}中关闭()流如果要从第二个命令转换文件,请使用dos2unix之类的命令。但是,如果要使用正确的行分隔符生成文件,只需在生成文件本身的脚本中设置正确的行分隔符,只需使用:System.setProperty(“line.separator”,“\r\n”)作为旁注,您应该始终在finally{…}中关闭()流如果要从第二个命令转换文件,请使用dos2unix之类的命令。但是,如果要使用适当的行分隔符生成文件,只需在生成文件本身的脚本中设置适当的行分隔符即可,只需使用:System.setProperty(“line.separator”,“\r\n”)谢谢,我的错。现在我只在每行的末尾有\n。我将文件以.csv格式写入windows文件系统,并使用SublimiteText打开它。在这里我尝试搜索“\r\n”,但它没有返回任何内容。谢谢,我的错。现在我只在每行的末尾有\n。我将文件以.csv格式写入windows文件系统,并使用SublimiteText打开它。在这里我尝试搜索“\r\n”,但它没有返回任何内容。谢谢,我的错。现在我只在每行的末尾有\n。我将文件以.csv格式写入windows文件系统,并使用SublimiteText打开它。在这里我尝试搜索“\r\n”,但它没有返回任何内容。谢谢,我的错。现在我只在每行的末尾有\n。我将文件以.csv格式写入windows文件系统,并使用SublimiteText打开它。在这里,我尝试搜索“\r\n”,但它没有返回任何内容。