<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    數據加載中……
    Java 文件操作
    2008年5月1日   Edited By DingDangXiaoMa
    Java 對文件的操作有很多種方法,類也很多,這里舉出最簡單的測試例子,讀取文件輸入輸出數據庫操作。
    以下是部分源代碼:
    package com.zh.wsdy.dao;

    import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;

    import org.hibernate.Query;
    import org.hibernate.Session;
    import org.hibernate.Transaction;

    import com.zh.wsdy.model.AjPrgWsmb;
    import com.zh.wsdy.model.BaseHibernateDAO;
    import com.zh.wsdy.model.Wtest;

    //測試讀寫文件及讀文件到數據庫中。。。
    public class TestDAO extends BaseHibernateDAO {
        
    private static final int BUFFER_SIZE = 16 * 1024;

        
    public TestDAO() {

        }

        
    /**
         * 測試程序,把讀取一個文件,把個文件的內容,以字節的形式保存到數據中去。
         
    */
        
    public void saveFileStreamToDataBase(String id) {
            
    // 先進進行數據庫方面的操作。連接及新建類。
            Session session = getSession();
            Wtest test 
    = new Wtest(id);

            
    // 以下是文件的定義。
            File file = new File("c:" + File.separator + "response.txt");
            
    // File file = new File("c:" + File.separator + "a.java");
            
    // File file = new File("c:" + File.separator + "word.doc");

            
    try {
                FileInputStream inputStream 
    = new FileInputStream(file);
                BufferedInputStream bufferedInputStream 
    = new BufferedInputStream(
                        inputStream);
                
    byte[] buffer = new byte[BUFFER_SIZE];
                
    while (bufferedInputStream.read(buffer) > 0) {
                    test.setWcontent(buffer);
                }
                Transaction trac 
    = session.beginTransaction();
                trac.begin();
                session.save(test);
                System.out.println(
    "插入一條數據成功.");
                trac.commit();
            } 
    catch (Exception e) {
                e.printStackTrace();
            }
        }

        
    /**
         * 傳遞主鍵參數,從數據庫中讀取數據。
         * 
         * 
    @param id
         
    */
        
    public void ReadDataBaseStreamToString(String id) {
            Session session 
    = getSession();
            Query query 
    = session.createQuery("from AjPrgZdms m where m.FId =:id");
            
    // Query query = session.createQuery("from Wtest t where t.wid =:id ");
            query.setString("id", id);
            AjPrgWsmb test 
    = (AjPrgWsmb) query.list().get(0);
            
    // Wtest test = (Wtest)query.list().get(0);
            
    // byte [] content = test.getWcontent();
            byte[] content = test.getFWsys();
            System.out.print(content); 
    // 在這里直接輸出字節,沒有進行字符串的轉換。
            
    // String contentString = new String(content); //進行轉換,把字節轉換成String
            
    // System.out.print("the String is : "+contentString);
        }

        
    /**
         * 從數據庫讀取byte型數據,寫入當地文件,看一下,寫入與原始文件的差別。
         * 
         * 
    @param id
         
    */
        
    public void writeFileFromDataBase(String id) {
            Session session 
    = getSession();
            Query query 
    = session.createQuery("from Wtest t  where t.wid =:id");
            query.setString(
    "id", id);
            Wtest test 
    = (Wtest) query.list().get(0);
            
    byte[] content = test.getWcontent();
            
    try {
                BufferedOutputStream out 
    = new BufferedOutputStream(
                        
    new FileOutputStream("c:\\word2.doc"));
                out.write(content);
                System.out.println(
    "從數據庫中讀取數據,并寫入相應的文件中。。。");
            } 
    catch (Exception e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }
            
    // System.out.print(content); //在這里直接輸出字節,沒有進行字符串的轉換。
        }

        
    /**
         * 這個測試的方法是,從AjPrgWsmb表中,讀取數據,寫入到相應的文件中去。
         * 
         * 
    @param id
         
    */
        
    public void writeFile(String id) {
            Session session 
    = getSession();
            Query query 
    = session.createQuery("from AjPrgWsmb m where m.FId =:id");
            
    // Query query = session.createQuery("from Wtest t where t.wid =:id ");
            query.setString("id", id);
            AjPrgWsmb test 
    = (AjPrgWsmb) query.list().get(0);
            
    // Wtest test = (Wtest)query.list().get(0);
            
    // byte [] content = test.getWcontent();
            
    //byte[] content = test.getFWsys();
            byte[] content = test.getFContent();
            
    if(content!=null){
            
    try {
                BufferedOutputStream out 
    = new BufferedOutputStream(
                        
    new FileOutputStream("c:\\word2.doc"));
                out.write(content);
                System.out.println(
    "從數據庫中讀取數據,并寫入相應的文件中。。。");
            } 
    catch (Exception e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }
            }
    else{
                System.out.println(
    "這個文書模板樣式為空值。。。。。");
            }
        }

        
    /**
         * 
    @param args
         
    */
        
    public static void main(String[] args) {
            TestDAO test 
    = new TestDAO();
            
    // test.saveFileStreamToDataBase("txt"); // 保存一條數據到數據庫中,主鍵為txt,word,java
            
    // test.ReadDataBaseStreamToString("word");
            
    // test.writeFileFromDataBase("0000000010");
            test.writeFile("0000000023");

        }

    }
    以上的例子很簡單,是一些普通的文件的操盤。

    posted on 2008-05-01 17:04 叮當小馬 閱讀(241) 評論(0)  編輯  收藏 所屬分類: JSP/JAVA

    主站蜘蛛池模板: 无码免费又爽又高潮喷水的视频 | 亚洲精品无码久久毛片| 在线亚洲高清揄拍自拍一品区| 免费黄色网址网站| 亚洲性色成人av天堂| 亚州免费一级毛片| ass亚洲**毛茸茸pics| 黄页网站免费在线观看| 亚洲入口无毒网址你懂的| 毛片免费观看视频| 含羞草国产亚洲精品岁国产精品| 日韩成人免费在线| 国产AV无码专区亚洲AV琪琪| 亚洲国产精品成人久久蜜臀| 一个人免费播放在线视频看片| 亚洲日韩v无码中文字幕| 国产在线观a免费观看| 亚洲伦理一区二区| 成人免费AA片在线观看| 无码亚洲成a人在线观看| 亚洲精品老司机在线观看| 日本道免费精品一区二区| 亚洲神级电影国语版| 成人毛片免费播放| 日韩精品无码永久免费网站| 亚洲日韩欧洲无码av夜夜摸| 91精品免费久久久久久久久| 亚洲色欲啪啪久久WWW综合网| 国产国产成年年人免费看片| 成人免费ā片在线观看| 亚洲高清中文字幕| 又爽又高潮的BB视频免费看| 中文在线免费不卡视频| 亚洲人成网站18禁止久久影院| 亚洲AV无码成人精品区日韩| 亚洲国产成人影院播放| 好男人视频在线观看免费看片| 国产AV日韩A∨亚洲AV电影| 国产一区二区三区免费看| 在线观看免费黄网站| 亚洲国产成人综合|