如何在java中将图像转换为base64字符串? [复制]

2024-04-20

它可能是重复的,但我在将图像转换为时遇到一些问题Base64发送给Http Post。我已经尝试过这段代码,但它给了我错误的编码字符串。

 public static void main(String[] args) {

           File f =  new File("C:/Users/SETU BASAK/Desktop/a.jpg");
             String encodstring = encodeFileToBase64Binary(f);
             System.out.println(encodstring);
       }

       private static String encodeFileToBase64Binary(File file){
            String encodedfile = null;
            try {
                FileInputStream fileInputStreamReader = new FileInputStream(file);
                byte[] bytes = new byte[(int)file.length()];
                fileInputStreamReader.read(bytes);
                encodedfile = Base64.encodeBase64(bytes).toString();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            return encodedfile;
        }

Output:[B@677327b6

但我将同一张图像转换为Base64在许多在线编码器中,它们都给出了正确的大 Base64 字符串。

Edit:怎么是重复的??与我重复的链接没有给我转换我想要的字符串的解决方案。

我在这里缺少什么?


问题是你正在返回toString()的呼叫Base64.encodeBase64(bytes)它返回一个字节数组。所以你最终得到的是字节数组的默认字符串表示形式,它对应于你得到的输出。

相反,你应该这样做:

encodedfile = new String(Base64.encodeBase64(bytes), "UTF-8");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在java中将图像转换为base64字符串? [复制] 的相关文章

随机推荐

  • psql:符号查找错误:psql:未定义符号:PQsetErrorContextVisibility

    我将 postgres 版本从 9 2 24 切换到 9 6 因为我需要 jsonb 兼容性以及其他最新功能 我在 centos 7 上运行虚拟机 我决定擦除所有现有的 postgres 实例 因为它是临时的 所以几乎是空的 然后安装了 9
  • 签名者无效错误

    我为应用程序商店发行版构建 但是当尝试在设备上 而不是开发中 测试它时 它给出以下警告 应用程序 myapp 未安装在 iPhone 用户的 iPhone 上 因为签名者无效 任何解决这个问题的建议 此致 当您想要测试应用程序的生产版本 而
  • Unity 协程在后台停止

    我的问题如下 目前我在 Android iOS 游戏中运行了几个协程 但是当我将游戏发送到后台以便用手机尝试其他操作时 这些协程会停止 只有在我返回游戏后才恢复 有什么办法可以让协程在游戏在后台时继续运行吗 Android 将按设计暂停您的
  • 官方 Tensorflow 文档有 pdf 格式吗? (运行Windows)

    我无法找到 Tensorflow 的 pdf 格式文档 API 或教程 我指的是官方文档 而不是要求书籍推荐 具体为pdf格式 供离线本地参考和学习 一个问题是我运行的是 Windows 因此用于创建的可用工具集 它们动态地受到限制 或与通
  • 使用 gradlew 和 gradle 的区别

    使用有什么区别gradlew and gradle或者它们是相同的吗 不同之处在于 gradlew表明您正在使用 gradle 包装器 包装器通常是项目的一部分 它有助于 gradle 的安装 如果您在没有包装器的情况下使用 gradle
  • Request.UserHostAddress返回负载均衡器的IP地址

    我的网站中有一行关键代码可以在我们的开发环境中运行 但不能在生产环境中运行 好吧 我说它在开发中起作用 但事实是它给了 1 这是 IPv6 环回地址 无论如何 我想要做的是捕获访问该站点的用户的 IP 地址 因此 我使用Request Us
  • 以编程方式登录网站的技术

    我正在尝试自动登录 Photobucket 以供 API 使用 用于需要使用存储的凭据自动下载照片的项目 API 生成一个用于登录的 URL 并且使用 Firebug 我可以查看正在发送 接收的请求和响应 我的问题是 如何使用 HttpWe
  • 蓝牙连接:MODE_IN_CALL 与 MODE_IN_COMMUNICATION

    我有一个应用程序需要连接到无线蓝牙耳机来收集原始音频 MODE IN CALL 适用于某些设备 MODE IN COMMUNICATION 适用于其他设备 麦克风可以工作 但我失去了音频 反之亦然 我使用的是 Nexus 5x 和 Sams
  • Ajax.BeginForm 的 ASP .NET MVC 问题用 JSON 数据替换所有视图内容

    我在 VS 2015 中创建了一个示例 ASP NET MVC 网站 在视图中我使用扩展 Ajax BeginForm 将登录凭据发布到控制器 并且在 OnSuccess 回调上我想检查服务器错误 如果有则显示错误用户其他 重定向到主页 这
  • 当我向 /common/oauth2/v2.0/token 发出 Ajax 请求时出现 CORS 错误

    当我向以下对象发出 Ajax 请求时出现 CORS 错误https login microsoftonline com common oauth2 v2 0 token从我的申请中 下面是我正在使用的代码示例 var inputData g
  • 本地化 Android DatePickerDialog

    是否可以配置 android app DatePickerDialog 以便轻松本地化为欧洲格式 交换日期和月份并将英文按钮名称与本地化按钮名称交换 DatePickerDialog 默认情况下已本地化 我在真实设备上尝试过 对话框的本地化
  • 无法连接到 Subversion 本地存储库

    我已在 Windows 7 64 位上安装了 Subversion 1 8 8 和 TortoiseSVN 1 8 5 64 位 我使用 TortoiseSVN 在 C Projects SVNRepository 创建了一个本地存储库 在
  • 我可以从哪里开始使用可编程硬件?

    一段时间以来 我一直渴望至少学习一点有关硬件编程的知识 并想在这里提出要求以获得一些起点 我是一位相当有成就的程序员 具有 Delphi 和 Objective c 经验 但从未听过设备端口 中断 我什至不知道术语 更不用说对硬件进行编程了
  • 动态添加注释到现有类

    我有以下课程 public class Person 我想创建另一个类似这样的类 SomeAnnotation public class Person 通过像这样的简单方法 public static Class addAnnotation
  • IsPrimitive 不包含可为 null 的原始值

    我想检查类型是否是原始类型并使用以下代码 return type IsValueType type IsPrimitive 只要原始 int 可为空 这就可以正常工作 例如 int 如何检查该类型是否为可为空的原始类型 供参考 type I
  • 删除代码隐藏中的 asp.net 事件

    我想删除代码后面的事件 比如我的控件是这样的
  • 如何从三个 ReceiveStream 中一次读取一行?

    异步有StreamReader readline https docs python org 3 library asyncio stream html asyncio StreamReader readline 允许类似 while Tr
  • 使用 WinHTTP API 进行证书固定

    是否可以使用 Win32 WinHTTP API 实现证书固定 如果可以 如何实现 IE 如何根据 已知良好 的证书检查返回的服务器证书 最好不必将证书永久写入本地证书存储 受到jww的回答的启发 首先我发现这一页 https www ow
  • MonoTouch 和 LINQ - 由于对象的当前状态,操作无效

    我有一个应用程序 在 Mac 上使用 Monotouch C 作为前端 从后端 VS2010 中的 WCF 服务中提取数据 昨晚我离开前一切都像做梦一样顺利 而今天 我不确定发生了什么 我所看到的是 这是来自 Monotouch 的 lin
  • 如何在java中将图像转换为base64字符串? [复制]

    这个问题在这里已经有答案了 它可能是重复的 但我在将图像转换为时遇到一些问题Base64发送给Http Post 我已经尝试过这段代码 但它给了我错误的编码字符串 public static void main String args Fi