gpt4 book ai didi

java - 在json文件中将图像转换为Base64问题

转载 作者:行者123 更新时间:2023-12-01 20:20:36 25 4
gpt4 key购买 nike

我在对图像进行编码以将其发送到 json 文件时遇到问题。如果我将图像字符串提取到txt并对其进行解码,它工作正常,我可以看到编码的图像,但是当我将其放入json文件时,图像字符串在遇到“/”时发生变化,它将其转换为“\/” 添加到 json 文件,如果图像字符串更改行,则 json 文件会添加“\n”。这使得无法从 json 文件中提取图像字符串来查看图像。

ByteArrayOutputStream baos2 = new ByteArrayOutputStream();
Bitmap bitmap2 = ((BitmapDrawable) secondImageV.getDrawable()).getBitmap();
bitmap2.compress(Bitmap.CompressFormat.JPEG, 100, baos2);
byte[] imageBytes2 = baos2.toByteArray();
imageString2 = Base64.encodeToString(imageBytes2, Base64.DEFAULT);

sendPost(imageString1,imageString2,sendAlert);

public void sendPost(String im1, String im2, String alert) {

JSONObject json = new JSONObject();
try {
json.put("name", compname.getText());
json.put("hydrovalue", _hydrometerValue.getText());
json.put("im1", im1) ;
json.put("im2", im2);
json.put("hydrohealth", check1);
json.put("hydrorepair", check2);
json.put("hydroalert", alert);
json.put("stime", stime.getText());
json.put("etime", etime.getText());
json.put("comm", _comments.getText());

} catch (JSONException e) {
e.printStackTrace();
}

String url = "https://api.myjson.com/bins/lmz8i";
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, url, json,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
Toast.makeText(getApplicationContext(), "String Response : " + response.toString(), Toast.LENGTH_LONG).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(), "Error getting response", Toast.LENGTH_LONG).show();
}
});

最佳答案

使用 Base64“URL 安全”编码。实例化这些编码器/解码器,如下所示 java.util.Base64.getUrlEncoder 和 java.util.Base64.getUrlDecoder

关于java - 在json文件中将图像转换为Base64问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58937405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com