我學(xué)JAVA

          Java的IO的一個實例

          import java.io.*;
          import java.util.zip.*;
          public class JavaIODemo{
           String temp=new String();
           String t=new String();
           public void readByLineFromConsoleAndPrint(){
            System.out.println("==從控制臺獲得輸入==");
            try{
             BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
             System.out.println("請輸入一行字符:");
             System.out.println(temp=in.readLine());
            }
            catch(IOException e){
             e.printStackTrace();
            }
           }
           public void readByLineFromFileAndPrint(){
            System.out.println("==從文件獲得輸入==");
            try{
             BufferedReader in=new BufferedReader(new FileReader("demo.out"));
             temp="";
             String s=new String();
             while((s=in.readLine())!=null)
                temp+=s+"\n";
                in.close();
                System.out.println(temp);
               }
               catch(FileNotFoundException e){
               e.printStackTrace();
               }
               catch(IOException e){
               e.printStackTrace();
               }
           }
           public void readFromMemoryAndPrint(){
            System.out.println("==從內(nèi)存獲得輸入==");
            try{
             StringReader stringReader=new StringReader(temp);
             int t;
             while((t=stringReader.read())!=-1)
             System.out.println((char)t);
            }
            catch(IOException e){
             e.printStackTrace();
            }
           }
           public void writeToFile()
           {
            System.out.println("==文件輸出流==");
            try{
             BufferedReader in=new BufferedReader(new StringReader(temp));
             PrintWriter out=new PrintWriter(new BufferedWriter(new FileWriter("demo.out")));
             while((t=in.readLine())!=null)
             out.println(t);
             out.close();
            }
            catch(IOException e){
             e.printStackTrace();
            }
           }
           public void randomAccessFile(){
            try{
             System.out.println("==隨機訪問文件==");
             RandomAccessFile file=new RandomAccessFile("rand.out","rw");
             for(int i=0;i<10;i++)
             file.writeDouble(i*1.12);
             file.seek(100);
             file.writeDouble(577.4545);
             file.close();
             file=new RandomAccessFile("rand.out","r");
             for(int i=0;i<10;i++)
             System.out.println("value"+i+"="+file.readDouble());
             file.seek(100);
             System.out.println(file.readDouble());
             file.close();
            }
            catch(IOException e){
             e.printStackTrace();
            }
           }
           public void formattedInputAndOutput()
           {
            System.out.println("==格式化數(shù)據(jù)輸出==");
            try{
             DataOutputStream out=new DataOutputStream(new BufferedOutputStream(new FileOutputStream("data.data")));
             out.writeDouble(54.7769);
             out.writeBytes("this is bytes\n");
             out.writeChars("this is chars\n");
             out.writeFloat(100.6f);
             out.writeUTF("this is utf encoding string\n");
             out.close();
             
             System.out.println("==格式化數(shù)據(jù)輸入==");
             DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream("data.data")));
             BufferedReader reader=new BufferedReader(new InputStreamReader(in));
             System.out.println(in.readDouble());
             System.out.println(in.readLine());
             System.out.println(in.readLine());
             System.out.println(in.readFloat());
             System.out.println(in.readLine());
            }
            catch(EOFException e){
             System.out.println("end of stream");
            }
            catch(IOException e){
             e.printStackTrace();
            }
           }
           /*public void readAndWriteSerialObject(){
            System.out.println("==讀寫序列化對象==");
            Test test=new Test("init value");
            try{
             ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("test.ser"));
             out.writeObject("保存序列化對象");
             out.writeObject(test);
             out.close();
             ObjectInputStream in=new ObjectInputStream(new FileInputStream("test.ser"));
             System.out.println(in.readObject());
             in.close();
             System.out.println(t.getValue());
            }
            catch(IOException e){
             e.printStackTrace();
            }
            catch(ClassNotFoundException e){
             e.printStackTrace();
            }
           }*/
           public void zipFile(){
            System.out.println("==使用java壓縮文件==");
            try{
             FileOutputStream file=new FileOutputStream("demo.zip");
             CheckedOutputStream csum=new CheckedOutputStream(file,new Adler32());
             ZipOutputStream zip=new ZipOutputStream(new BufferedOutputStream(csum));
             zip.setComment("Zip輸出流測試");
             BufferedReader reader=new BufferedReader(new FileReader("Test.java"));
             zip.putNextEntry(new ZipEntry("Test.java"));
             int c;
             while((c=reader.read())!=-1)
                zip.write(c);
             zip.close();
            }
            catch(IOException e){
             e.printStackTrace();
            }
           }
           public static void main(String []args){
            JavaIODemo demo=new JavaIODemo();
            demo.readByLineFromConsoleAndPrint();
            demo.readFromMemoryAndPrint();
            demo.writeToFile();
            demo.formattedInputAndOutput();
            demo.randomAccessFile();
            demo.readByLineFromFileAndPrint();
            file://demo.readAndWriteSerialObject();
            demo.zipFile();
           }
          }

          posted on 2005-01-18 15:11 我走我路 閱讀(703) 評論(1)  編輯  收藏

          評論

          # re: Java的IO的一個實例 2008-08-09 02:36 竇紅亮

          好,努力繼續(xù)。  回復(fù)  更多評論   


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          <2008年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導(dǎo)航

          統(tǒng)計

          公告

          正在學(xué)習(xí)JAVA技術(shù)中。。。。。

          常用鏈接

          留言簿

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 望江县| 容城县| 伊吾县| 康乐县| 富顺县| 城步| 清流县| 东兴市| 旬阳县| 体育| 大港区| 隆尧县| 阿克苏市| 浦江县| 新巴尔虎右旗| 山阳县| 简阳市| 遂平县| 泰宁县| 鄂温| 全州县| 淳安县| 祁连县| 清丰县| 南乐县| 平遥县| 东平县| 萨迦县| 长乐市| 乡城县| 莆田市| 陵水| 富锦市| 修武县| 华蓥市| 隆林| 古交市| 清河县| 安达市| 扎赉特旗| 洞口县|