使用方法
第一引数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 件のコメント:
コメントを投稿