Newer
Older
IrisServer / src / main / java / com / ntlab / irisserver / utils / Base64Decode.java
package com.ntlab.irisserver.utils;

import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Base64;

public class Base64Decode {
    public static String saveAsFile(String rid ,Integer dno ,String path1 ,String enimage) throws IOException {

        //デコードを行う
        byte[] dedata = Base64.getDecoder().decode(enimage);

        //ファイルを作成する
        String fileName =  rid + "-" + dno.toString() + ".png";
        String path = path1 + "/" + fileName;


        File file = new File(path);
        file.getParentFile().mkdirs();
        file.createNewFile();

        //ファイルに画像データを書き込む
        FileOutputStream file1 = new FileOutputStream(file, false);
        BufferedOutputStream bf = new BufferedOutputStream(file1);
        bf.write(dedata, 0, dedata.length);

        //ファイルを閉じる
        bf.close();

        // 保存先のURLリンクを返す
        String drawingUrlPath = "http://nitta-lab-www.is.konan-u.ac.jp/irisdata/image/" + rid + "-" + dno + ".png";

        //セーブしたファイルの相対パスを文字列として返す
        return drawingUrlPath;
    }
}