File Streams

Revised: May/5th/2002; Since: Jan./5th/2002

$B%U%!%$%k$KBP$9$k%9%H%j!<%`$O!"

$B%F%-%9%H!&%U%!%$%k(B FileReader
FileWriter
$B%P%$%J%j!&%U%!%$%k(B FileInputStream
FileOutputStream

$B$3$l$i$N%/%i%9$G$O!"(B JavaVM $B$,F0:n$7$F$$$k%M%$%F%#%V$J%U%!%$%k%7%9%F%`>e$K$"$k%U%!%$%k$KBP$9$k%9%H%j!<%`$r:n$j$^$9!#$3$N%U%!%$%k$O!"(B File $B%/%i%9$d(B FileDescriptor $B%/%i%9$N%*%V%8%'%/%H$H$7$F;2>H$7$^$9!#(B

$B%3%s%9%H%i%/%?(B

$BJ8;z%9%H%j!<%`(B

$B7Q>54X78!'(B

java.io.FileReader java.io.FileWriter
java.lang.Object
  |
  +--java.io.Reader
        |
        +--java.io.InputStreamReader
              |
              +--java.io.FileReader
java.lang.Object
  |
  +--java.io.Writer
        |
        +--java.io.OutputStreamWriter
              |
              +--java.io.FileWriter

$B%3%s%9%H%i%/%?!'(B

FileReader(File file)
FileReader(FileDescriptor fd)
FileReader(String fileName)
FileWriter(File file)
FileWriter(FileDescriptor fd)
FileWriter(String fileName)
FileWriter(String fileName, boolean append)

FileWriter $B$N>l9g$O!"=q$-9~$_;~$K%U%!%$%k$KDI2C$9$k$N$+!"?75,$K=q$-9~$`$N$+$rBhFs0z?t$G;XDj$G$-$^$9!#0z?t$,0l$D$N>l9g$O%U%!%$%k$N@hF,$+$i?75,=q$-9~$_$H$J$j!"4{B8$N%G!<%?$O<:$o$l$^$9!#>\:Y$O(B API $B;EMM=q$r;2>H$/$@$5$$!#(B

$B%P%$%H%9%H%j!<%`(B

$B7Q>54X78!'(B

java.io.FileInputStream java.io.FileOutputStream
java.lang.Object
  |
  +--java.io.InputStream
        |
        +--java.io.FileInputStream
java.lang.Object
  |
  +--java.io.OutputStream
        |
        +--java.io.FileOutputStream

$B%3%s%9%H%i%/%?!'(B

FileInputStream(File file)
FileInputStream(FileDescriptor fdObj)
FileInputStream(String name)
FileOutputStream(File file)
FileOutputStream(FileDescriptor fdObj)
FileOutputStream(String name)
FileOutputStream(String name, boolean append)

FileOutputStream $B$N>l9g$O!"=q$-9~$_;~$K%U%!%$%k$KDI2C$9$k$N$+!"?75,$K=q$-9~$`$N$+$rBhFs0z?t$G;XDj$G$-$^$9!#0z?t$,0l$D$N>l9g$O%U%!%$%k$N@hF,$+$i?75,=q$-9~$_$H$J$j!"4{B8$N%G!<%?$O<:$o$l$^$9!#>\:Y$O(B API $B;EMM=q$r;2>H$/$@$5$$!#(B

$BJ8;z%9%H%j!<%`$N%5%s%W%k(B

$B:G=i$KJ8;z%9%H%j!<%`$r;H$C$F$_$^$7$g$&!#Cm0U$9$Y$-$3$H$O!"l9g$ONc30$,H/@8$9$k$H8@$&$3$H$G$9!#$3$NNc30$O(B$B%-%c%C%A(B$B$,I,?\$G$9!#(B

CCopy.java:

import java.io.*;
class CCopy {
	public static void main(String[] args) {
		try {
			//$B%U%!%$%k%*%V%8%'%/%H$N:n@.(B
			File iFile = new File(args[0]);
			File oFile = new File(args[1]);
			//$BJ8;z%9%H%j!<%`$N:n@.(B
			FileReader in  = new FileReader(iFile);
			FileWriter out = new FileWriter(oFile);
			//$BFI$_9~$_$H=q$-9~$_(B
			int c;
			while ((c = in.read()) != -1) {
				out.write(c);
			}
			//$B%9%H%j!<%`$rJD$8$k(B
			in.close();
			out.close();
			System.out.println("$B%3%T!<=*N;!#(B");
		} catch (IOException e) {
			System.out.println("$BF~=PNONc30$,H/@8!#(B");
			System.out.println(e);
		}
	}
}

$B%3%^%s%I%i%$%s$NBh0l0z?t$+$i(B File $B%*%V%8%'%/%H$r$D$/$j!"$=$3$X(B FileReader $B%9%H%j!<%`$r:n$C$F$$$^$9!#F1$8$/!"BhFs$N0z?t$+$i$b(B File $B%*%V%8%'%/%H$r:n$C$F!"(B FileWriter $B%9%H%j!<%`$r:n$C$F$$$^$9!#(B

c = in.read() $B$O!"%*%V%8%'%/%H(B in $B$+$i0lJ8;zFI$_9~$_!"(B c $B$KBeF~$7$F$$$^$9!#%U%!%$%k$,=*N;$9$k(B (EOF: EndOfFile) $B$J$I!"FI$_9~$a$J$1$l$P(B -1 $B$,JV$j$^$9!#(B

out.write(c) $B$O!"%*%V%8%'%/%H(B out $B$K!"J8;z(B c $B$r=PNO$7$F$$$^$9!#(B

$BFI$_9~$`%U%!%$%k$,B8:_$7$J$$>l9g$O!"(B$BNc30(B java.io.FileNotFoundException $B$,H/@8$7$^$9!#B>$K$bNc30$,H/@8$9$k2DG=@-$N$"$k%a%=%C%I$,;H$o$l$F$$$k$N$G!"$=$l$i$N%9!<%Q!<%/%i%9$G$"$k(B java.io.IOException $B7?$G%-%c%C%A$7$F$$$^$9!#99$K$=$N%9!<%Q!<%/%i%9$G$"$k(B java.lang.Exception $B7?$G%-%c%C%A$7$F$bNI$$$G$7$g$&!#$$$:$l$K$;$h!"$3$N7?$NNc30$O(B$B%-%c%C%A(B$B$,I,?\$G$9!#99$K>e$N@)8f$X(B$B%9%m!<(B$B$7$F$bNI$$$G$7$g$&!#(B

$Btest.txt $B$,B8:_$7$F$$$?>l9g$N$b$N$G$9!#%3%^%s%I%i%$%s0z?t$K!"FI$_9~$_%U%!%$%k$H=q$-9~$_%U%!%$%k$r;XDj$7$^$9!#(B

C:\IO>javac CCopy.java
C:\IO>java CCopy test.txt test_c.txt
$B%3%T!<=*N;!#(B
C:\IO>

$B

$B%P%$%H%9%H%j!<%`$N%5%s%W%k(B

$B2hA|!?2;@<$J$I$N%P%$%J%j%U%!%$%k$N>l9g$O!"%P%$%H%9%H%j!<%`(B FileInputStream/FileOutputStream $B$r;H$$$^$9!#>e$N%5%s%W%k$N%9%H%j!<%`$NItJ,$r

//$B%P%$%H%9%H%j!<%`$N:n@.(B
FileInputStream  in  = new FileInputStream(iFile);
FileOutputStream out = new FileOutputStream(oFile);

$B$3$N%/%i%9$r(B BCopy.java $B$H$7$F:n@.$7$^$9!#F1$8%G%#%l%/%H%j$K(B NEXTindex.gif $B$,B8:_$7$?>l9g$N

C:\IO>javac BCopy.java
C:\IO>java BCopy NEXTindex.gif copy.gif
$B%3%T!<=*N;!#(B
C:\IO>

$B%5%s%W%k(B

$BJ8;z%9%H%j!<%`$N%5%s%W%k(B CCopy.java $B$r>/$7=$@5$7$F!"%3%T!<$9$k$@$1$G$O$J$/!"3F9T$4$H$K9THV9f$rDI2C$7$F=PNO$9$k$h$&$KJQ$($F$_$^$7$g$&!'(B

Nl.java:

import java.io.*;
public class Nl {
	public static void main(String[] args) throws IOException {
		//$B%U%!%$%kL>$N%$%s%9%?%s%92=(B
		File inputFile = new File(args[0]);
		File outputFile = new File(args[1]);
		//$BF~=PNO%9%H%j!<%`$N%$%s%9%?%s%92=(B
		FileReader in = new FileReader(inputFile);
		FileWriter out = new FileWriter(outputFile);
		int c;
		int i=1;
		out.write(i+": ");
		while ((c = in.read()) != -1) {
			out.write(c);
			if (c == '\n') {
				i++;
				out.write(i + ": ");
			}
		}
		in.close();
		out.close();
		System.out.println("$B%3%T!<=*N;!#(B");
	}
}

$B$3$3$G$O!"Nc30$r%-%c%C%A$7$J$$$G!"99$K>e$N@)8f$X%9%m!<$7$F$7$^$C$F$$$^$9!#(B

\n $B$O2~9T$rI=$7$^$9!#FI$_9~$s$@J8;z$,2~9TJ8;z$J$i$P!"$=$N

C:\IO>javac Nl.java
C:\IO>java Nl test.txt nltest.txt
$B%3%T!<=*N;(B
C:\IO>


Copyright © 2002 SUGAI, Manabu. All Rights Reserved.
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送