使用方法
第一引数fiは、入力ファイル
第二引数foは、出力ファイル
第三引数bCntは、改行を挿入する位置
public static void main(String[] args) {
}
を実装して使ってみてください。
import java.util.regex.Pattern;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
public class InsertReturnCode {
public boolean insertReturnCode(File fi, File fo, int bCnt){
BufferedInputStream bi = null;
BufferedOutputStream bo = null;
String line = null;
if (fi == null || fo == null ) {
System.out.println("パラメータに誤りがあります。");
return false;
} else if (fi.isDirectory() || fo.isDirectory()) {
System.out.println("ファイルではありません。");
return false;
// } else if (!fi.canRead() || !fo.canWrite()) {
// System.out.println("読み込みまたは、書き込みが出来ません。");
// return false;
} else if (!fi.exists()) {
System.out.println("入力ファイルが存在しません。");
return false;
// } else if (fo.exists()) {
// System.out.println("出力ファイルと同名のファイルが存在します。");
// return false;
} else if (fi.getPath().equals(fo.getPath())) {
System.out.println("入力ファイルと出力ファイルが同一のパスです。");
return false;
}
try {
byte[] b = new byte[bCnt];
int i = 0;
bi = new BufferedInputStream(new FileInputStream(fi));
bo = new BufferedOutputStream(new FileOutputStream(fo));
while (bi.read(b, 0, bCnt) > -1) {
bo.write(b, 0 ,bCnt);
bo.write(new byte[]{0,10});
i++;
}
bi.close();
bo.close();
} catch (FileNotFoundException e) {
System.out.println("ファイルが見つかりません。");
return false;
} catch (UnsupportedEncodingException e) {
System.out.println("文字コードがサポートされていません。");
return false;
} catch (IOException e) {
System.out.println("入出力でエラーが発生しました。");
return false;
}
return true;
}
}
0 件のコメント:
コメントを投稿