中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Java如何讀取文件內容再編輯

      時間:2024-10-16 15:58:27 SUN認證 我要投稿
      • 相關推薦

      Java如何讀取文件內容再編輯

        有時候,我們需要將讀取文件的內容到一個byte[] 數組中,然后對這個數組進行一些修改,這時,我們可以借助于ByteArrayOutputStream 這個類來實現。

      Java如何讀取文件內容再編輯

        ByteArrayOutputStream,顧名思義,同樣是一個OutputStream,那么,對于它的寫入操作,和其他的 OutputStream應該是沒有什么兩樣,寫入代碼可以說是隨手拈來的,與其他輸出流的不同之處在于,ByteArrayOutputStream寫入到內存中,并提供一個 toByteArray() 方法返回我們所需要的byte[]。

        Java代碼

        //保存上傳的附件信息

        String filename = files[0];

        String filepath = "upload/append/"+files[1];

        BufferedInputStream in = new BufferedInputStream(new FileInputStream(filepath));

        ByteArrayOutputStream out = new ByteArrayOutputStream(2048);

        System.out.println("available bytes"+in.available());

        byte[] temp = new byte[2048];

        int size =0;

        while((size = in.read(temp))!=-1){ out.write(temp,0,size);

        }

        in.close();

        byte[] content = out.toByteArray();

        String stream = new BaseCode64().EncodeBase64(content);

        System.out.println("content" +content.length);

        effect += insertAttachmentInfo(conn,attNo,processId,filename,stream);

        這里把讀取的流以base64保存,使用了類BaseCode64()的方法EncodeBase64。

        代碼如下:

        Java代碼

        package com.ving.xzfw.util;

        import java.io.ByteArrayOutputStream;

        public class BaseCode64 {

        private String TableBase64;

        private String FError;

        public BaseCode64()

        {

        TableBase64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

        FError = new String();

        FError = "";

        }

        public String DecodeBase64(byte [] Value){

        ByteArrayOutputStream o = new ByteArrayOutputStream();

        byte d[] = new byte[4];

        try

        {

        int count = 0;

        byte x[] = Value;

        do

        {

        if(count >= x.length)

        {

        break;

        }

        for(int n = 0; n <= 3; n++)

        {

        if(count >= x.length)

        {

        d[n] = 64;

        } else

        {

        int y = TableBase64.indexOf(x[count]);

        if(y < 0)

        {

        y = 65;

        }

        d[n] = (byte)y;

        }

        count++;

        }

        o.write((byte)(((d[0] & 0x3f) << 2) + ((d[1] & 0x30) >> 4)));

        if(d[2] != 64)

        {

        o.write((byte)(((d[1] & 0xf) << 4) + ((d[2] & 0x3c) >> 2)));

        if(d[3] != 64)

        {

        o.write((byte)(((d[2] & 3) << 6) + (d[3] & 0x3f)));

        }

        }

        } while(true);

        }

        catch(StringIndexOutOfBoundsException e)

        {

        FError = String.valueOf(String.valueOf(FError)) + String.valueOf(String.valueOf(e.toString()));

        System.out.println(e.toString());

        }

        return o.toString();

        }

        public String EncodeBase64(byte [] Value){

        ByteArrayOutputStream o = new ByteArrayOutputStream();

        byte d[] = new byte[4];

        try

        {

        int count = 0;

        for(byte x[] = Value; count < x.length;)

        {

        byte c = x[count];

        count++;

        d[0] = (byte)((c & 0xfc) >> 2);

        d[1] = (byte)((c & 3) << 4);

        if(count < x.length)

        {

        c = x[count];

        count++;

        d[1] = (byte)(d[1] + (byte)((c & 0xf0) >> 4));

        d[2] = (byte)((c & 0xf) << 2);

        if(count < x.length)

        {

        c = x[count];

        count++;

        d[2] = (byte)(d[2] + ((c & 0xc0) >> 6));

        d[3] = (byte)(c & 0x3f);

        } else

        {

        d[3] = 64;

        }

        } else

        {

        d[2] = 64;

        d[3] = 64;

        }

        int n = 0;

        while(n <= 3)

        {

        o.write(TableBase64.charAt(d[n]));

        n++;

        }

        }

        }

        catch(StringIndexOutOfBoundsException e)

        {

        FError = String.valueOf(String.valueOf(FError)) + String.valueOf(String.valueOf(e.toString()));

        System.out.println(e.toString());

        }

        return o.toString();

        }

        }

      【Java如何讀取文件內容再編輯】相關文章:

      Android讀取本地json文件的方法07-06

      Java文件解壓縮示例08-21

      新建立的網站如何編輯用戶喜歡的內容06-19

      php使用fgetcsv讀取csv文件出現亂碼怎么辦08-16

      java認證考試培訓內容06-25

      Java文件解壓縮實例詳解201607-26

      如何編譯java程序09-28

      用PHP腳本在Linux系統上讀取輸入和對文件進行操作10-28

      TTF字體文件如何安裝11-03

      Excel文件如何設置密碼08-25

      主站蜘蛛池模板: 亚洲av高清资源在线观看三区| 岛国av一区二区三区| 男女在线免费视频网站| 精品在线观看视频二区| 无码人妻丝袜在线视频| 91精品国产91热久久p| 亚洲一区二区在线免费观看视频| 日喀则市| 日本亚洲一级中文字幕| 国产一区二区黑丝美女| 人妻少妇av中文字幕乱码免费| 激情人妻网址| 国产在线一区二区三区在线观看| 中文字幕亚洲精品乱码在线看| 亚洲一区二区精品在线播放| 国产白浆美女在线观看| 一区二区中文字幕视频| 日产国产精品一区二区| 无码av一区在线观看| 国产丰满乱子伦无码专| 国产chinese在线视频| 菏泽市| 富宁县| 泽库县| 安陆市| 东辽县| 99久久综合狠狠综合久久一区| 久久青草亚洲AV无码麻豆| 永年县| 亚洲av综合色区久久精品天堂| 国产精品成人无码久久久久久| 网友自拍人妻一区二区三区三州| 91青青草久久| 国产丝袜精品丝袜一区二区| 亚洲在线一区二区三区四区| 在线视频青青草猎艳自拍69| 国产av色| 国产传媒剧情久久久av| 国产三级高清在线观看.| 97成人午夜精品长长久久| 中文字幕乱码免费人妻av|