Java 使用FileWriter打印新行
这是一种加密/解密文件(SourceFile.txt)并将结果保存在另一个文件(ConvertedFile.txt)中的方法 如果源文件中有如下内容 玛丽有 一点点 羔羊 convertedFile包含以下加密内容: 李嘉诚 e pmxxpi peqf 是否有任何方法可以使用FileWriter在每行末尾打印“\n”(新行)Java 使用FileWriter打印新行,java,Java,这是一种加密/解密文件(SourceFile.txt)并将结果保存在另一个文件(ConvertedFile.txt)中的方法 如果源文件中有如下内容 玛丽有 一点点 羔羊 convertedFile包含以下加密内容: 李嘉诚 e pmxxpi peqf 是否有任何方法可以使用FileWriter在每行末尾打印“\n”(新行) 我甚至试过了。写(10)。。。不起作用您错过了while循环的大括号 while(sc.hasNextLine()) { line = sc.nextLine();
我甚至试过了。写(10)。。。不起作用您错过了while循环的大括号
while(sc.hasNextLine())
{
line = sc.nextLine();
st = new StringTokenizer(line, " ");
while(st.hasMoreTokens())
{ // Add braces here for newline
out.write(c.convert(st.nextToken(), index) + " ");
out.write(10); //Without braces it will be skipped.
}
}
你错过了while循环的括号
while(sc.hasNextLine())
{
line = sc.nextLine();
st = new StringTokenizer(line, " ");
while(st.hasMoreTokens())
{ // Add braces here for newline
out.write(c.convert(st.nextToken(), index) + " ");
out.write(10); //Without braces it will be skipped.
}
}
使用打印机
PrintWriter p = new PrintWriter(out);
p.println(str);
使用打印机
PrintWriter p = new PrintWriter(out);
p.println(str);
您可以将
FileWriter
包装在BufferedWriter
中,并使用newLine()
您可以将
FileWriter
包装在BufferedWriter
中,并使用newLine()
然后,该文件包含:
Rakesh
KR
或者您可以使用BufferedWriter
作为
public void fileWrite(String fileName,ArrayList<String> str){
File f ;
FileWriter fw = null;
BufferedWriter bw = null;
try {
f = new File(fileName);
fw = new FileWriter(f.getAbsoluteFile());
bw = new BufferedWriter(fw);
for(String i:str){
bw.write(i);
bw.newLine();
}
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(bw!=null)
bw.close();
if(fw!=null)
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public void fileWrite(字符串文件名,ArrayList str){
文件f;
FileWriter fw=null;
BufferedWriter bw=null;
试一试{
f=新文件(文件名);
fw=新文件编写器(f.getAbsoluteFile());
bw=新的缓冲写入程序(fw);
for(字符串i:str){
bw.write(i);
换行符();
}
}捕获(IOE异常){
e、 printStackTrace();
}最后{
试一试{
如果(bw!=null)
bw.close();
如果(fw!=null)
fw.close();
}捕获(IOE异常){
e、 printStackTrace();
}
}
}
然后,该文件包含:
Rakesh
KR
或者您可以使用BufferedWriter
作为
public void fileWrite(String fileName,ArrayList<String> str){
File f ;
FileWriter fw = null;
BufferedWriter bw = null;
try {
f = new File(fileName);
fw = new FileWriter(f.getAbsoluteFile());
bw = new BufferedWriter(fw);
for(String i:str){
bw.write(i);
bw.newLine();
}
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(bw!=null)
bw.close();
if(fw!=null)
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public void fileWrite(字符串文件名,ArrayList str){
文件f;
FileWriter fw=null;
BufferedWriter bw=null;
试一试{
f=新文件(文件名);
fw=新文件编写器(f.getAbsoluteFile());
bw=新的缓冲写入程序(fw);
for(字符串i:str){
bw.write(i);
换行符();
}
}捕获(IOE异常){
e、 printStackTrace();
}最后{
试一试{
如果(bw!=null)
bw.close();
如果(fw!=null)
fw.close();
}捕获(IOE异常){
e、 printStackTrace();
}
}
}
Wild guess:您在windows上,应该写\r\n如何。。。这确实奏效了。。。。谢谢…@SBI,10是newline的ASCII值\n
@Masud当然是。但是Windows使用回车符和换行符组合\r\n,而unix只使用换行符\r\n。这是关于空白如何工作的传统处理方法,可以追溯到旧打字机。胡乱猜测:您在windows上,应该如何写。。。这确实奏效了。。。。谢谢…@SBI,10是newline的ASCII值\n
@Masud当然是。但是Windows使用回车符和换行符组合\r\n,而unix只使用换行符\r\n。这是关于空白如何工作的传统处理方法,可以追溯到老式打字机。如果我加上这些大括号,每个单词都将被打印在一行中。。。。我不想那样…如果我加上这些大括号,每个单词都会被打印在一行中。。。。我不想那样。。。。