$B%9%H%j!<%`$N(B Tips and Tricks

Revised: Feb./23rd/2003

$B%3%s%T%e!<%?$O!"F~NO$5$l$?%G!<%?$r=hM}$7$F=PNO$9$k$b$N$G$9!#%G!<%?F~=PNO(B(I/O: Input/Output)$B$O!"$=$N%G!<%?=hM}$N%m%8%C%/

$B%9%H%j!<%`$D$$$F$O!">\$7$/@bL@:Q$_$G$9$,!"$3$3$G$O%?%9%/;X8~$N(B Tips $B$H$7$F$^$H$a$J$*$7$^$9!#(B

Q22. $B%U%!%$%k$rI=8=$9$k$K$O!)(B

$BNc$($P!"(BFileInputStream$B$N%3%s%9%H%i%/%?$O;0$D$"$j!"$=$l$>$l0z?t$H$7$F!"%Q%9$rI=$9J8;zNs!"(BFile$B%*%V%8%'%/%H!"(BFileDescriptor$B%*%V%8%'%/%H$r$H$j$^$9!#$^$?!"%U%!%$%k$KFC2=$7$?%9%H%j!<%`$G$"$k(BRandomAccessFile$B$H$$$&%/%i%9$b$"$j$^$9!#(B

$B%9%H%j!<%`$G%U%!%$%k$K%"%/%;%9$9$k$K$O!"%M%$%F%#%V$N%U%!%$%k!&%7%9%F%`$KBP$9$k(BAPI$B$re$G

$B$3$NLdBj$r2r7h$9$k$?$a$K!"(BJava$B$G$O%U%!%$%k!&%"%/%;%9$r%W%i%C%H%U%)!<%`FHN)$K$J$k$h$&$KCj>]2=$9$k%/%i%9$rMQ0U$7$F$$$^$9!#(B

$BJ8;zNs(B
$B%U%!%$%k$N%Q%9$rJ8;zNs$G5-=R$7$^$9!#%G%#%l%/%H%j3,AX$rI=8=$9$k>l9g$O!"6h@Z$jJ8;z$J$I$K%U%!%$%k!&%7%9%F%`0MB8$NI=8=$,4^$^$l$k$3$H$K$J$j$^$9!#(B
File$B%/%i%9(B
$B%7%9%F%`>e$N%Q%9$rCj>]2=$7$FI=8=$7$^$9!#$D$^$j!"6qBNE*$J%U%!%$%k$H$$$&]2=$7$F%9%H%j!<%`$G
FileDescriptor$B%/%i%9(B
$B%U%!%$%k$r]2=$7$?35G0$G$"$j!"DL>o$G$OL50UL#$G$9!#(B
RandomAccessFile$B%/%i%9(B
$B%U%!%$%k$KBP$7$F%i%s%@%`%"%/%;%92DG=$J%9%H%j!<%`$G$9!#DL>o$N%9%H%j!<%`$O!"%U%!%$%k$KBP$7$F$b!"@hF,$+$i=gHV$K8!:w$9$k%7!<%1%s%7%c%k!JD>@~E*!K$J%"%/%;%9$@$1$7$+$G$-$^$;$s!#$3$N%9%H%j!<%`$O!"%U%!%$%kFb$NG$0U$N>l=j!J%*%U%;%C%H!K$+$iG$0U%5%$%:$rA`:n$G$-$^$9!#(B

$B%9%H%j!<%`$NOHAH$_$G$O(BFile$B%/%i%97?%*%V%8%'%/%H$r;H$C$F!"%M%$%F%#%V$N%U%!%$%k!&%7%9%F%`$rCj>]2=$7$F2DHB@-$r3NJ]$7$^$9!#%9%H%j!<%`$NOHAH$_$+$i30$l$F!"%i%s%@%`%"%/%;%9$rMxMQ$9$k>l9g$O(BRandomAccessFile$B$rMxMQ$7$^$9!#(BFileDescriptor$B$OKX$I;H$o$l$^$;$s!#(B

Q23. $B%9%H%j!<%`$N4pK\E*$J;H$$J}$O!)(B

$B%9%H%j!<%`$rC1FH$G;H$&$3$H$OKX$I$J$/!"B>$N%9%H%j!<%`$N%3%s%9%H%i%/%?$K0z?t$H$7$FM?$($^$9!#(B

$B%*%V%8%'%/%H$rB>$N%*%V%8%'%/%H$K$/$k$s$G$7$^$&$3$H$r%i%C%T%s%0$H8F$S$^$9!#%9%H%j!<%`$b!"%i%C%T%s%0$K$h$C$F!"MW7o$r2L$?$9E,@Z$J5!G=$r

$BNc$($P!"%U%!%$%k$+$i$N%F%-%9%HF~NO$N>l9g!"(BFileReader$B$N(Bread(), readLine()$B$GFI$_9~$_$^$9$,!"$3$l$i$OFI$_=P$7Kh$K%U%!%$%k%"%/%;%9!"%P%$%H$NJ8;zNsJQ49!"%/%m!<%:$r7+$jJV$9$N$GCx$7$/8zN($,0-$/$J$j$^$9!#%G%#%9%/$O:Y@Z$l$N%l%3!<%I$r7+$jJV$7FI$`$h$j$b!"0lDj%5%$%:$N%V%m%C%/$r>.?t2sFI$_9~$`J}$,8zN(E*$G$9!#(B

$B$3$NLdBj$r2sHr$9$k$?$a$K!"%P%C%U%!$r;}$C$?%9%H%j!<%`$G%i%C%W$7$^$9!#(BBufferedReader$B$N>l9g!"%3%s%9%H%i%/%?$O(BReader$B7?%*%V%8%'%/%H$r0z?t$K$H$k$N$G!"(BReader$B%/%i%9$N%5%V%/%i%97?$NG$0U$N%9%H%j!<%`$r0z?t$K;}$D$3$H$,$G$-$^$9!#(B

// FileReader$B%9%H%j!<%`$N:n@.(B
FileReader fin = new FileReader("myText.txt");
// BufferedReader$B$G(Bfin$B$r%i%C%W(B
BufferedReader bin = new BufferedReader(fin);

$B$3$l$ODL>o!"

 
Reader bin = new BufferedReader(
        new FileReader("myText.txt"));

$B$3$3$G$O(BReader$B7?%9%H%j!<%`$rNc$K$H$j$^$7$?$,!"%i%C%T%s%0$d%P%C%U%!%j%s%0$NFCD'$O!"%P%$%H!&%9%H%j!<%`!"J8;z%9%H%j!<%`6!$K6&DL$G$9!#

InputStream bin = new BufferedInputStream(
        new ProgressMonitorInputStream(myFrame, "$BFI$_9~$_Cf(B...",
                new FileInputStream("myData.dat")));

$B%9%H%j!<%`$OB>$N%9%H%j!<%`$G%i%C%W$9$k$3$H$G5!G=3HD%$G$-$^$9!#%P%C%U%!$r;}$D%9%H%j!<%`$G%i%C%W$9$k7A$r21$($F$/$@$5$$!#(B

Q24. $B%P%$%H!&%9%H%j!<%`$rJ8;z%9%H%j!<%`$KJQ49$9$k$K$O!)(B

$BA4$F$N%9%H%j!<%`$O!":G=i$O%P%$%H!&%9%H%j!<%`$G$9!#(BInputStreamReader/OutputStreamWriter$B$GJ8;z%9%H%j!<%`$KJQ49$7$^$9!#(B

$B%j%9%H(B8$B$O!"%M%C%H%o!<%/$N(BSocket$B$+$iF~=PNO%9%H%j!<%`$r0!"%=%1%C%H$+$iF~=PNO%9%H%j!<%`$r

$B"'%j%9%H(B8

// "www.idg.co.jp/jw/"$B$N%]!<%H(B80$B$X$N%=%1%C%H(B
Socket socket = new Socket("http://www.idg.co.jp/jw/", 80);
// $B%=%1%C%H$+$iF~=PNO%9%H%j!<%`$N

$B%j%9%H(B8$B$G8+$?$H$*$j!"%P%$%H!&%9%H%j!<%`$rJ8;z%9%H%j!<%`$KJQ49$9$k$K$O!"(BInputStreamReader/OutputStreamWriter$B$r;H$$$^$9!#Nc$($P!"$3$l$i$N%5%V%/%i%9$G$"$k!"(BFileInputReader/FileOutputWriter$B$O!"(BInputStreamReader/OutputStreamWriter$B$N0z?t$K(BFileInputStream/FileOutputStream$B$rM?$($?$b$N$K2a$.$^$;$s!#(B

Q25. $BJ8;z%3!<%I$r;XDj$9$k$K$O!)(B

$BJ8;z%3!<%I$r;XDj$9$k$K$O!"(BInputStreamReadr$B$H(BOutputStreamWriter$B$r;H$$$^$9!#(B

$Bl9g$O!"(BJava$B$NFbIt%3!<%I$G$"$k(BUNICODE$B$H!"%7%9%F%`$N%G%U%)%k%HJ8;z%3!<%I4V$G!"<+F0E*$KJQ49$5$l$^$9!#(B

$BJ8;z%3!<%I$rL@<(E*$K;XDj$9$k$?$a$K!" public InputStreamReader(InputStream in, String charsetName) throws UnsupportedEncodingException public OutputStreamWriter(OutputStream out, String charsetName) throws UnsupportedEncodingException

$B$=$l$>$l!"BhFs0z?t$KJ8;z%3!<%I$r;XDj$7$^$9!#(BJ2SE 1.4$B$G$O!"(Bjava.nio.charset$B%Q%C%1!<%8$K!"J8;z%;%C%H$rI=$9(BCharset$B%/%i%9$b;H$($^$9!#%5%]!<%H$5$l$F$$$kJ8;z%3!<%I$N%j%9%H$O!"

$BF|K\8l$,;H$($kBeI=E*$JJ8;z%3!<%I$r!"I=(B3$B$K5s$2$F$*$-$^$9!#4pK\E*$K$O!"(BIANA$B$KEPO?$5$l$?L>A0(B$B$G;XDj$9$k$3$H$,?d>)$5$l$^$9!#(B

$BI=(B3. $BBeI=E*$JF|K\8lJ8;z%3!<%I(B
$BJ8;zId9f2=J}K!(B$B@bL@(B
UTF-88$B%S%C%H(BUCS$BJQ497A<0(B
UTF-1616$B%S%C%H(BUCS$BJQ497A<0(B
Shift_JIS
(SJIS)
$B%7%U%H(BJIS
Windows-31J
(MS932)
Windows$BMQF|K\8lJ8;z%3!<%I(B
$B"((B1.4.2$B$G$O(BShift_JIS$B$HHs8_49(B
ISO-2022-JP
(ISO2022JP)
JIS
EUC-JP
(EUC_JP)
$B3HD%(BUNIX$B%3!<%IF|K\8l%U%)!<%^%C%H(B
JISAutoDetect$BFI$_9~$_!J(BReader$B!K@lMQ!#F|K\8lJ8;z%3!<%I$r<+F0H=JL(B

$B%j%9%H(B9$B$O!"I8=`F~NO(BSystem.in$B$r%G%U%)%k%H$NJ8;z%3!<%I$GJ8;z%9%H%j!<%`$KJQ49$7!"=PNO%9%H%j!<%`$G$O(BEUC-JP$B$KJQ49$7$F=PNO$7$F$$$^$9!#(B

$B"'%j%9%H(B9

import java.io.*;
class EncodingDemo {
    public static void main(String[] args) throws IOException {
        BufferedReader in = null;
        BufferedWriter out = null;
        try {
            in = new BufferedReader(new InputStreamReader(System.in));
            out = new BufferedWriter(new OutputStreamWriter(System.out, "EUC-JP"));
            String str = in.readLine();
            out.write("EUC-JP: " + str);
            out.newLine();
            out.flush();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            in.close();
            out.close();
        }
    }
}

Q26. System.out.println()$B$O%9%H%j!<%`$8$c$J$$$N!)(B

Java$B$NJY6/$G:G=i$K$*L\$K$+$+$k%a%=%C%I!"(BSystem.out.pritln()$B$O!"(B"Hello ,World!"$B$rI=<($5$;$k$@$1$G$O$"$j$^$;$s!#(BSystem$B%/%i%9$N(Bout$B%U%#!<%k%I$O(BPrintStream$B7?$G$9!#(B

PrintStream$B$O!"$5$^$6$^$J%G!<%?$r4JC1$K=PNO$9$k%/%i%9$G$9!#(BPrintStream$B$NJ8;z%9%H%j!<%`HG$,(BPrintWriter$B$G!"$3$A$i$OG$0U$N%G!<%?$rJ8;zNs$KJQ49$7$FJ8;z%9%H%j!<%`$K=q$-=P$7$^$9!#(B

$B$$$:$l$N%/%i%9$b!"%U%i%C%7%e$N@)8f!"J8;z%3!<%I$N;XDj$r%5%]!<%H$7$F$*$j!"(Bprint(), println()$B$NFs$D$N%a%=%C%I$G!"$$$m$$$m$J%G!<%?$r4J0WE*$K=q$-=P$9$3$H$,$G$-$^$9!J%j%9%H(B10$B!K!#(B

$B"'%j%9%H(B10

PrintWriter out = new PrintWriter(
new BufferedWriter(new FileWriter("myFile.txt")));
out.println("Hello, World!");
out.close();

Q26. $B%9%H%j!<%`$N8zN($r>e$2$k$K$O!)(B

$B%P%C%U%!!&%5%$%:$r;XDj$9$k$J$I$N%+%9%?%^%$%:$G!"(BI/O$B8zN($r8~>e$5$;$k$3$H$,$G$-$^$9!#(B

FileInputStream$B$rNc$K$H$j$^$7$g$&!#(Bread()$B%a%=%C%I$O;0$D%*!<%P!<%m!<%I$5$l$F$$$^$9!#(B

public int read() throws IOException
public int read(byte[] b) throws IOException
public int read(byte[] b, int off, int len)

read(byte[] b)$B$G$O!"(Bbyte[] b$B$KBP$7$F:GBg$G(Bb.length$B%P%$%HFI$_9~$`$3$H$,$G$-$^$9!#(Bread(byte[], int off, int leng)$B$G$O!"(Bbyte[] b$B$KBP$7$F!"3+;O%*%U%;%C%H(Boff$B$+$i:GBg$G(Blen$B%P%$%H$@$1FI$_9~$a$^$9!#La$jCM$O%P%C%U%!$KFI$_9~$^$l$?%P%$%H?t$G$9!#%G!<%?$,$J$$>l9g$O(B-1$B$K$J$j$^$9!#(B FileOutputStream$B$G$bF1MM$N$3$H$,8@$($^$9!#(Bwrite(byte[] b), write(byte[] b, int off, int len)$B$K$h$C$F!"%P%C%U%!$r%+%9%?%^%$%:$G$-$^$9!J%j%9%H(B11$B!K!#(B

$B"'%j%9%H(B11

// $B%P%C%U%!!&%5%$%:$N;XDj(B
int bufferSize = 10000;
byte[] buffer = new byte[bufferSize];
// $BF~=PNO%9%H%j!<%`$N:n@.(B
InputStream in = new FileInputStream(args[0]);
OutputStream out = new FileOutputStream("copy_" + args[0]);
// $B%P%C%U%!$KBP$9$kFI$_9~$_!?=q$-=P$7(B
int block;
while((block = in.read(buffer)) != -1) {
    out.write(buffer, 0, block);
}
// $B%9%H%j!<%`$N%/%m!<%:(B
in.close();
out.close();

Q27. $B%*%V%8%'%/%H$r=q$-=P$9$K$O!)(B

$B%$%s%?%U%'!<%9(BSerializable$B$+(BExternalizable$B$r

$B%*%V%8%'%/%H$NK\BN$O%U%#!<%k%I!J%$%s%9%?%s%9JQ?t!K$NCM$G$9!#%a%=%C%I$J$I$O%/%i%9Dj5A$+$iI|85$G$-$^$9$,!"$"$k;~E@$G%*%V%8%'%/%H$,J];}$7$F$$$k%U%#!<%k%I$NCM$O%*%V%8%'%/%H8GM-$G$"$j!"1JB32=(B(persistent)$B$9$k$K$O!"%U%!%$%k$d%M%C%H%o!<%/$J$I(BJavaVM$B$N30$K=q$-=P$9I,MW$,$"$j$^$9!#(B

$B%*%V%8%'%/%H$r%9%H%j!<%`$K=q$-=P$9$K$O!"%U%#!<%k%I$NCM$rO"B3$9$k%G!<%?$NO"$J$j$KJQ49$9$kI,MW$,$"$j$^$9!#$3$l$rD>Ns2=!J%7%j%"%i%$%:!K$H8F$S$^$9!#%*%V%8%'%/%H$ND>Ns2=$G$O!"%U%#!<%k%I$NCM$,%W%j%_%F%#%V7?$J$i$P$=$N$^$^=q$-=P$7$^$9!#B>$N%*%V%8%'%/%H$r;2>H$7$F$$$k>l9g$K$O!"$=$N%*%V%8%'%/%H$bD>Ns2=$7$F=q$-=P$7$^$9!#(B

$BD>Ns2=2DG=$J%*%V%8%'%/%H$O!"(BSerializable$B$+(BExternalizable$B$rNs2=2DG=$r0UL#$9$k$@$1$G!"$J$K$bDj5A$7$F$$$^$;$s!#(BExternalizable$B$O(BSerializable$B$N%5%V%$%s%?%U%'!<%9$G$9!#(B

$BD>Ns2=2DG=$J%*%V%8%'%/%H$ND>Ns2=!?I|85!!$O!"(BObjectOutputStream/ObjectInputStream$B$K$h$k!"FI$_9~$_!?=q$-=P$7;~$K<+F0E*$K=hM}$5$l$^$9!J%j%9%H(B12$B!K!#(B

$B"'%j%9%H(B12

// ObjectOutputStream$B$N:n@.(B
ObjectOutputStream out = new ObjectOutputStream(
	new BufferedOutputStream(new FileOutputStream("t.tmp")));
// $BD>Ns2=(B
out.writeObject(obj);
out.flush();
out.close();
// ObjectInputStream$B$N:n@.(B
ObjectInputStream in = new ObjectInputStream(
	new BufferedInputStream(new FileInputStream("t.tmp")));
// $BI|85!J5UD>Ns2=!K(B
// $B85$N7?$K%-%c%9%H(B
List inObj = (ArrayList)in.readObject();
in.close();

Q28. $BD>Ns2=2DG=$J%U%#!<%k%I$OA*Br$G$-$k!)(B

$B=$>~;R(Bstatic$B$H(Btransient$B$,$D$$$?%U%#!<%k%I$OD>Ns2=$5$l$^$;$s!#5U$K!"(BserialPersistentFields$B$H$$$&(BObjectStreamField[]$B7?$N%U%#!<%k%I$GL@<(E*$K;XDj$9$k$3$H$b$G$-$^$9!#(B

$BD>Ns2=$G$O!":F5"E*$K;2>H$9$k%*%V%8%'%/%H$r=q$-=P$9$?$a$K!"%G%#%9%/MFNL!"LL$GHs>o$K%3%9%H$N9b$$J}K!$G$9!#$^$?!"(BJavaVM$B$N30B&$K=q$-=P$5$l$?$b$N$O!"(BJava$B$N%;%-%e%j%F%#$NOHAH$_$+$iJ]8n$5$l$J$$$N$G!"IT@5$J%"%/%;%9$KBP$7$FL5KIHw$K$J$j$^$9!#0J>e$NE@$G!"1JB32=$9$kI,MW$,$J$$$b$N$O!"$G$-$k$@$1=q$-=P$5$J$$$3$H$,=EMW$G$9!#(B

static$B%U%#!<%k%I$O!"%/%i%9Dj5A$K$h$C$FI|852DG=$J$N$GD>Ns2=$5$l$^$;$s!#(B

transient$B=$>~;R$O!"D>Ns2=$7$?$/$J$$%U%#!<%k%I$rL@<($9$k$?$a$K;XDj$7$^$9!#(Btransient$B$,;XDj$5$l$?%U%#!<%k%I$O=q$-=P$5$l$J$$$N$G!"I|85$G$-$k$h$&$K!"(BreadObject()$B$r%*!<%P!<%i%$%I$7$F$*$/I,MW$,$"$j$^$9!#(B

serialPersistentFields$B%U%#!<%k%I$r;XDj$9$k>l9g!"$3$NG[Ns$K2?$bDI2C$7$J$$$H!"2?$bJ]B8$5$l$^$;$s!#$^$?!"(Btransient$B$,;XDj$5$l$?%U%#!<%k%I$G$b!"(BserialPersistentFields$B$KDI2C$5$l$k$H=q$-=P$5$l$^$9!#(B

Q29. Externalize$B$H(BSerializable$B$N0c$$$O!)(B

Serializable$B%*%V%8%'%/%H$O<+F0E*$KD>Ns2=$5$l$^$9!#5sF0$r%+%9%?%^%$%:$9$k>l9g$O!"(BExternalize$B$NJ}$,=@Fp$G$9!#(B

Serializable$B%*%V%8%'%/%H$O!"I|85$9$k$?$a$K==J,$J>pJs$,%G%U%)%k%H$GJ]4I$G$-$^$9!#(BExternalize$B%*%V%8%'%/%H$G$O!"%G%U%)%k%H$G$O!"%*%V%8%'%/%H$N7?$r<1JL$9$k>pJs$@$1$,J]4I$5$l$^$9!#$3$3$G%*%V%8%'%/%H$N>uBV$rJ]4I!?I|85$9$k$?$a$K$O!"==J,$J>pJs$r=q$-=P$9$?$a$N(BwriteExternal()$B%a%=%C%I$H!"%*%V%8%'%/%H$rI|85$9$k$?$a$N(BreadExternal()$B%a%=%C%I$r

Serializable$B$NJ]4I!?I|85$N%"!<%-%F%/%A%c$rMxMQ$7$?$/$J$$!?MxMQ$G$-$J$$$H$-$K$O!"(BExternalize$B$r;H$$$^$9!#(B



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