我有段代码如下:FileReader reader = null;
FileWriter fw = null;
File file = new File("e:\\abc.txt");
try {
StringBuffer sb = new StringBuffer();
reader = new FileReader(file);
int len = 0;
fw = new FileWriter("e:\\a.txt");
while(true){
len = reader.read();
if(len==-1)
break;
sb.append((char)len);
System.out.println(sb.toString());
}
fw.write(sb.toString());
System.out.println("文件复制成功!");
} catch (FileNotFoundException e) {
System.out.println("没有该文件!");
e.printStackTrace();
} catch (IOException e) {
System.out.println("文件读写异常!");
e.printStackTrace();
}finally{
try {
reader.close();
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}abc.txt的内容是:
hello world;
{
i am lynn;
}
复制到a.txt下也是
hello world;
{
i am lynn;
}
我现在想的是怎么让复制后的内容每行都对齐 达到以下效果
hello world;
{
i am lynn;
}
StringBuffer能够动态去掉制表符 或者空格吗?谢谢
FileWriter fw = null;
File file = new File("e:\\abc.txt");
try {
StringBuffer sb = new StringBuffer();
reader = new FileReader(file);
int len = 0;
fw = new FileWriter("e:\\a.txt");
while(true){
len = reader.read();
if(len==-1)
break;
sb.append((char)len);
System.out.println(sb.toString());
}
fw.write(sb.toString());
System.out.println("文件复制成功!");
} catch (FileNotFoundException e) {
System.out.println("没有该文件!");
e.printStackTrace();
} catch (IOException e) {
System.out.println("文件读写异常!");
e.printStackTrace();
}finally{
try {
reader.close();
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}abc.txt的内容是:
hello world;
{
i am lynn;
}
复制到a.txt下也是
hello world;
{
i am lynn;
}
我现在想的是怎么让复制后的内容每行都对齐 达到以下效果
hello world;
{
i am lynn;
}
StringBuffer能够动态去掉制表符 或者空格吗?谢谢
public static void main(String[] args) {
FileReader reader = null;
FileWriter fw = null;
File file = new File("e:\\abc.txt");
try {
String sb = null;
reader = new FileReader(file);
fw = new FileWriter("e:\\a.txt");
BufferedReader br = new BufferedReader(reader);
BufferedWriter bw = new BufferedWriter(fw);
while((sb = br.readLine()) != null){
bw.write(sb.replaceFirst("^\\s?", ""));
bw.newLine();
}
br.close();
bw.close();
System.out.println("文件复制成功!");
} catch (FileNotFoundException e) {
System.out.println("没有该文件!");
e.printStackTrace();
} catch (IOException e) {
System.out.println("文件读写异常!");
e.printStackTrace();
}
}
?号换成+号
BufferedReader bufferReader = null;
OutputStream outputStream = null;
try
{
InputStream inputStream = new FileInputStream(file );
inputReader = new InputStreamReader(inputStream);
bufferReader = new BufferedReader(inputReader);
// 读取一行
String line = null;
StringBuffer strBuffer = new StringBuffer();
String newLine = "\n";
//逐行读取
while ((line = bufferReader.readLine()) != null)
{
if (...){
String str = "...";
strBuffer.append(str);
strBuffer.append(newLine);
}
}
outputStream = new FileOutputStream(写入的文件);
outputStream.write(strBuffer.toString().getBytes());
}
catch (IOException e)
{
LOG.error(e.getMessage());
}
finally
{
OtherUtilAPI.closeAll(outputStream, bufferReader, inputReader);
}