1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Java sample code 02

Posted at

##SAMPLE GALLERYに掲載されたソースを疎通してimport文も付けました。
#2.FileIO

  • テキストファイルに書き込み
  • テキストファイルに改行を入れる
  • テキストファイルの読み込み
  • ウェブページの内容の読み込み
  • ファイルを別のファイルにコピー
  • 文字コードを指定しテキストファイルを読み込む(文字化け対策)
  • テキストファイルに文字列を書き込む
  • テキストファイルの文字列を読み込む

####2-1.テキストファイルに書き込み

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

public class SampleOutputStream {

    public static void main(String[] args) throws IOException {
        String text = "Hello World.";
        byte[] data = text.getBytes();
        OutputStream out = null;
        try {
            out = new FileOutputStream("OutputText.txt");//ここで書き込むファイルを指定しています。
            out.write(data);//ここで文字を書き込んでいます。
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (out != null) {
                out.close();
            }
        }

    }

}

####2-2.テキストファイルに改行を入れる

import java.io.*;

public class SampleOutputStream {

    private static final String NEW_LINE = "\n";//改行コードの定数

    public static void main(String[] args) throws IOException {
        String text = "Hello World.";
        byte[] data = text.getBytes();
        OutputStream out = null;
        try {
            out = new FileOutputStream("OutputText.txt");
            out.write(data);//1行目
            out.write(NEW_LINE.getBytes());//改行
            out.write(data);//2行目
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (out != null) {
                out.close();
            }
        }
        //ファイルの絶対パスを取得する
        File file = new File("OutputText.txt");
        String str = file.getAbsolutePath();
        System.out.println("pass : " + str);

    }

}

####2-3.テキストファイルの読み込み

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

public class SampleInputStream {

    public static void main(String[] args) throws IOException {
        InputStream in = null;
        try {
            in = new FileInputStream("InputText.txt");
            int i = -1;

            //ファイルを読み込んでいます。
            //read()メソッドは最後まで行くと-1を返すので、-1が返ってくるまでループを回します。
            while ((i = in.read()) != -1) {
                char character = (char) i;
                System.out.print(character);//コンソールに出力
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (in != null) {
                in.close();
            }
        }

    }

}

####2-4.ウェブページの内容の読み込み

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

public class SampleInputStream {
    public static void main(String[] args) throws IOException {
        //proxy 設定
        System.setProperty("http.proxyHost","test.proxy.com");
        System.setProperty("http.proxyPort","8081");
        System.setProperty("https.proxyHost","test.proxy..com");
        System.setProperty("https.proxyPort","8081");
        System.setProperty("http.nonProxyHosts","localhost|*.nonproxy.com");
        URL url = new URL("https://www.google.co.jp/");//ウェブページを指定。
        InputStream in = null;
        try {
            in = url.openStream();
            int i = -1;
            while ((i = in.read()) != -1) {
                char character = (char) i;
                System.out.print(character);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (in != null) {
                in.close();
            }
        }

    }

}

####2-5.ファイルを別のファイルにコピー

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.channels.FileChannel;

public class SampleOutputStream {

    public static void main(String[] args) throws IOException {
        FileInputStream in = null;
        FileOutputStream out = null;
        FileChannel inChannel = null;
        FileChannel outChannel = null;
        try {
            in = new FileInputStream("InputText.txt");//コピー元のファイルを指定
            out = new FileOutputStream("OutputText.txt");//コピー先のファイルを指定
            inChannel = in.getChannel();
            outChannel = out.getChannel();
            inChannel.transferTo(0, inChannel.size(), outChannel);//ファイルをコピー
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (outChannel != null) {
                outChannel.close();
            }
            if (inChannel != null) {
                inChannel.close();
            }
            if (out != null) {
                out.close();
            }
            if (in != null) {
                in.close();
            }
        }

    }

}

####2-6.文字コードを指定しテキストファイルを読み込む(文字化け対策)

import java.io.*;

public class SampleInputStream {

    public static void main(String[] args) throws IOException {
        InputStream in = null;
        InputStreamReader inr = null;
        try {
            in = new FileInputStream("InputText.txt");
            inr = new InputStreamReader(in, "UTF-8");//ここで文字コードを指定しています。
            int i = -1;

            while ((i = inr.read()) != -1) {
                char character = (char) i;
                System.out.print(character);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (inr != null) {
                inr.close();
            }
            if (in != null) {
                in.close();
            }
        }

    }

}

####2-7.テキストファイルに文字列を書き込む

import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;

public class SampleOutputStream {

    public static void main(String[] args) throws IOException {
        FileWriter out = null;
        try {
            out = new FileWriter("OutputText.txt");
            out.write("Hello World.");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (out != null) {
                out.close();
            }
        }

    }

}

####2-8.テキストファイルの文字列を読み込む

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class SampleBufferedReader {

    public static void main(String[] args) throws IOException {
        FileReader fr = null;
        BufferedReader br = null;
        try {
            fr = new FileReader("InputText.txt");
            br = new BufferedReader(fr);
            String line = null;
            while ((line = br.readLine()) != null) {
                System.out.println(line);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (br != null) {
                br.close();
            }
            if (fr != null) {
                fr.close();
            }
        }

    }

}
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?