在 Android 中将 jpeg 文件作为文本发布
Posting jpeg file as text in Android
我在 Android 设备中有一张 (jpeg) 格式的照片。与其 post 使用 HTTP 将文件作为文件,我更喜欢将其转换为字符串,然后 post 使用 http 将其作为字符串转换为电子表格。我知道 jpeg 文件被编码并打开它们作为字符串显示有趣的字符。我的问题是,如果我使用 http 将这些字符作为字符串发送,我可以使用二进制文件编辑器在另一端将它们取回并将它们另存为 jpeg 吗?
你可以做的一件事是,在客户端:
1.Convert 图像到 byte
数组。
Path path = yourImageFile.toPath();
byte[] byteArray = Files.readAllBytes(path);
2.Encode byteArray
转Base64 String
.
String encodedString = Base64.encodeBase64URLSafeString(byteArray);
3.That就这样了,通过http发送。
我不太确定你所说的二进制文件编辑器是什么意思,但是从服务器端你可以像这样检索图像(如果使用 Java
):
byte[] decodedByte = decodedBase64.decodeBase64(encodedString);
FileOutputStream out = new FileOutputStream("newPathToYourImage");
out.write(decodedByte);
out.close();
我在 Android 设备中有一张 (jpeg) 格式的照片。与其 post 使用 HTTP 将文件作为文件,我更喜欢将其转换为字符串,然后 post 使用 http 将其作为字符串转换为电子表格。我知道 jpeg 文件被编码并打开它们作为字符串显示有趣的字符。我的问题是,如果我使用 http 将这些字符作为字符串发送,我可以使用二进制文件编辑器在另一端将它们取回并将它们另存为 jpeg 吗?
你可以做的一件事是,在客户端:
1.Convert 图像到 byte
数组。
Path path = yourImageFile.toPath();
byte[] byteArray = Files.readAllBytes(path);
2.Encode byteArray
转Base64 String
.
String encodedString = Base64.encodeBase64URLSafeString(byteArray);
3.That就这样了,通过http发送。
我不太确定你所说的二进制文件编辑器是什么意思,但是从服务器端你可以像这样检索图像(如果使用 Java
):
byte[] decodedByte = decodedBase64.decodeBase64(encodedString);
FileOutputStream out = new FileOutputStream("newPathToYourImage");
out.write(decodedByte);
out.close();