我要实现文本文件中的每一行的单词逆序
比如
I like china!!!
I go to park
->
china!!! like I
park to go I
我好象就是回车和换行的时候有错,大家帮我看看。import java.io.*;
import java.util.HashMap;
public class FileManipulation
{
public static void main(String[] args)
{
int j;
FileReader fr=null;
FileWriter fw=null;
BufferedReader br=null;
BufferedWriter bw=null;
HashMap hm=new HashMap();
String str="";
char c='1'; try
{
fr=new FileReader("in.txt");
fw=new FileWriter("out.txt");
br=new BufferedReader(fr);
bw=new BufferedWriter(fw);
String s=br.readLine();
// 处理每一行数据
while(s!=null)
{
j=1;
for(int i=0;i<s.length();i++)
{
c=s.charAt(i);
//如果不为空格和新行就把前面的所有字符连接起来
if(c!=32)
{
str=str+String.valueOf(c);
//System.out.println(s.charAt(7)); }
//将单词放入HashMap,并将将str置空
else
{
hm.put(new Integer(j),new String(str));
j++;
str="";
}
}
//处理最后一个单词
hm.put(new Integer(j),new String(str));
//将单词逆序写入到文件中
for(int i=hm.size();i>=1;i--)
{
bw.write(String.valueOf(hm.get(new Integer(i)))+" ");
}
bw.newLine();
//遇到新行,将HashMap置空
hm.clear();
//System.out.println(hm.get(new Integer(2)));
s=br.readLine();
}
}catch(FileNotFoundException e)
{
e.printStackTrace();
}
catch(IOException ex)
{
ex.printStackTrace();
}
finally
{
try
{
if(bw!=null)
bw.close();
}catch(IOException e)
{
e.printStackTrace();
}
}
}
}
{
System.out.println(s);
j=1;
String str = "";//放到这里就OK了
for(int i=0;i<s.length();i++)