相关疑难解决方法(0)

Java - 将图像转换为Base64

我在将gif图像转换为基本64字符串时遇到问题.

当我转换它时,代码加起来像100,000 AAAAAA,而图像真的很小!

这是我的代码:

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.util.ArrayList;

public class Main
{

    public static void main(String[] args)
    {
        try
        {
            FileWriter fstream = new FileWriter("./out.txt");
            BufferedWriter out = new BufferedWriter(fstream);

            File folder = new File("./flags/");
            File[] listOfFiles = folder.listFiles();

            for (int i = 0; i < listOfFiles.length; i++)
            {
                if (listOfFiles[i].isFile())
                {
                    Main.readFile(out, listOfFiles[i]);
                }
            }

            out.close();
            System.out.println("Done");
        }
        catch (Exception e) {}
    }

    public static void readFile(BufferedWriter out, File file)
    {
        try
        { …
Run Code Online (Sandbox Code Playgroud)

java base64 image

23
推荐指数
2
解决办法
10万
查看次数

Java BufferedImage到PNG格式的Base64字符串

我试图将屏幕截图输出作为base64编码的字符串,但没有得到很远.到目前为止,我的代码使用的是Base64库(http://iharder.sourceforge.net/current/java/base64/):

    Robot robot = new Robot();
    Rectangle r = new Rectangle( Toolkit.getDefaultToolkit().getScreenSize() );
    BufferedImage bi = robot.createScreenCapture(r);
    ByteArrayOutputStream os = new ByteArrayOutputStream();
    OutputStream b64 = new Base64.OutputStream(os);
    ImageIO.write(bi, "png", os);
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    out.writeTo(b64);
    String result = out.toString("UTF-8");
Run Code Online (Sandbox Code Playgroud)

每次我运行它,"结果"总是一个空字符串,但我不明白为什么.有任何想法吗?

注意:我不想将png写入磁盘上的文件.

java base64 png bufferedimage

16
推荐指数
3
解决办法
4万
查看次数

在Java中可以将BufferedImage转换为IMG数据URI吗?

我用以下示例代码创建了一个图形图像.

BufferedImage bi = new BufferedImage(50,50,BufferedImage.TYPE_BYTE_BINARY);
Graphics2D g2d = bi.createGraphics();

// Draw graphics. 

g2d.dispose();
// BufferedImage now has my image I want.
Run Code Online (Sandbox Code Playgroud)

此时我有BufferedImage,我想将其转换为IMG数据URI.这可能吗?例如..

<IMG SRC="data:image/png;base64,[BufferedImage data here]"/>
Run Code Online (Sandbox Code Playgroud)

java graphics uri image

6
推荐指数
1
解决办法
7923
查看次数

Base64编码图像并在JS上渲染它

我正在尝试使用Java对64位图像进行编码,如下所示

public static String getImageStream(String latitude, String longitude) {
    byte[] result = null;
    try {
        URL url = new URL(....);

        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setUseCaches(false);
        connection.setDoOutput(true);
        DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
        wr.close();
        InputStream iSteamReader = connection.getInputStream();
        BufferedReader reader = new BufferedReader(new InputStreamReader(iSteamReader));
        String line;
        StringBuilder response = new StringBuilder();
        while ((line = reader.readLine()) != null) {
            response.append(line);
            response.append('\r');
        }
        reader.close();
        result = response.toString().getBytes("utf-8");
    } catch (IOException e) {
        logger.error(e.getMessage(), e);
        result = new byte[0];
    }
    return Base64.getEncoder().encodeToString(result);
}
Run Code Online (Sandbox Code Playgroud)

这给了我一张表格的图片 …

javascript java

3
推荐指数
1
解决办法
539
查看次数

标签 统计

java ×4

base64 ×2

image ×2

bufferedimage ×1

graphics ×1

javascript ×1

png ×1

uri ×1