图片base64的换行问题处理

有时,是后端临时生成一个图片,这时就需要把流返回给前端.

如果采用base64编码的话,返回前端时,需要确定一下返回字符串的格式问题.

标准的返回格式,如下,其中png表示图片类型,可以调整.

data:image/png;base64,base64编码后的字符串

实际开发中,发现返回的字符串,在图片还原的网站上,还原时,总是失败.

定位问题的方法,先用同一个图片,在这个网站上,生成base64字符串.然后用自己写的代码,把这个图片也生成base64的字符串,看看两者的区别.

base64图片在线转换工具 - 站长工具

经过对比,是base64编码的换行问题导致的.

采用java自带的编码方式,生成字符串如下采用java字段的编码方式,生成字符串如下

import sun.misc.BASE64Encoder;

BASE64Encoder encoder = new BASE64Encoder();
System.out.println(encoder.encode(data));

输出字符串如下:

iVBORw0KGgoAAAANSUhEUgAABF8AAAHHCAYAAABp1/ftAABX2klEQVR42uzdC4xc9Z0n+o7klSaT
iUJWibyByWainWUZhBiEgkjEQ8gy4S3Cwpim8WQQQjY3Mogw+LIYEDgIhWEYHtthQRgRxCAyjJdl
GF+vM1T7fW2zmJslxmAufcHjaTdgjMcQx5jG3Zx7fjV9ak6fruqu7q7uri5/PqW/3F1v1/n77/P/
1v/R1gYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACtLWmblZa5aelMy9a0HEqLS2MuO9KybPDz
naWyAQAAQKvnLEky65133ln+0ksvDaxevTpZsm1JcvTBo0UkU3CJzzk+766urmTDhg0fpmW+GgkA
......

采用apache的编码方式,生成字符串如下

import org.apache.commons.codec.binary.Base64;
System.out.println(Base64.encodeBase64String(data));

生成字符换如下

iVBORw0KGgoAAAANSUhEUgAABF8AAAHHCAYAAABp1/ftAABX2klEQVR42uzdC4xc9Z0n+o7klSaTiUJWibyByWainWUZhBiEgkjEQ8gy4S3Cwpim8WQQQjY3Mogw+LIYEDgIhWEYHtthQRgRxCAyjJdlGF+vM1T7fW2zmJslxmAufcHjaTdgjMcQx5jG3Zx7fjV9ak6fruqu7q7uri5/PqW/3F1v1/n77/P/1v/R1gYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACtLWmblZa5aelMy9a0HEqLS2MuO9KybPDznaWyAQAAQKvnLEky65133ln+0ksvDaxevTpZsm1JcvTBo0UkU3CJzzk+766urmTDhg0fpmW+GgkAAAAtJoKXjRs3Jj17e5KOgQ6RyDRc5g3MS3Z/uDtZv379x11dXZeplQAAANBCYsRLBC/nD5w/JBA4Kr0s7l+crPlsTbKnb0/S19enTLDs69uXbP5sc3Jb/23J19JL/vOeMzAn6fmwp69UKu1QKwEAAKCFxFSj4oiXBQMLkt6+XoHJJJYItK7rv27YCJhSqXRYrQQAAIAWEmuO5AOAGJUhHJm6Ep93/vMvHw8AAACgRSRts/KL68aIl1ohwW8/ei95Z+vPk9e7flIu8XNcJ0CZeMmPgBk8HnZBAgAAgBYJX+bm13ipNdXowP7eZPs/3J78euXiISWui9sEKBOfgjT789n5ETDnqpwAAADQGuFLZ9bdj8V1a4UDPa///bDgJSu7X18hQGn89KNlKicAAAC0RviyNevux65GtYKBHWv/omb4ErcJTyZeYhekXPhixyMAAABokfDlcNbdH2k76e2lO2uGL3Gb8KQx21DnF95VOQEAAKA1wpfKZaRgQPgyNUX4AgAAAEdo+BK7G9UKX+I2wYnwBQAAAJhA+NK96Wc1w5e4TXAifAEAAAAmEL7s692WbH/xjuFTjtLr4jbBifAFAAAAmED4EmXnK08NC1/iOqGJ8AUAAACYaPjy6adJ9+ZHhk85Sq+L2wQnwhcAAABgnOHLgf29yVubOmuu+RK3xX2EJ8IXAAAAYCzhy6efJu91r0le++WSmsFLVuI+cV+jYIQvAAAAQB3hy2ijXYyCEb4AAAAAEwhf6hntMtIoGEGK8AUAAAAYIXwZb/CSFUGK8AUAAAAYIXxRhC8AAACA8EX4AgAAAAhfFOELAAAACF+EL8IXAAAAQPgifAEAAACEL4rwBQAAABC+CF8AAAAA4YvwBQAAABC+KMIXAAAAQPgifAEAAACEL8IX4QsAAAAIXxThCwAAACB8Eb4AAAAAwhdF+AIAAAAzNlgppeV04YvwBQAAAJic8CW7RAjzXeGL8AUAAACYnPAlu6waNhJG+CJ8AQAAABoWvuRHwpwufBG+AAAAMPM7/7+blu+n5fi0HKtMeRntsmGmhC8vvvhicvPNNx9Z4Yv626zl+MF27Xc18gAAQDOEL9+vIwBwaZLLZAUKK1asSJ599tlk+fLl5XL99dcnb7755pD7RLCyadOmms8xf/785IYbbqg8R5SOjo5k586ddb2HeGy8h7G874MHDyY33nhj0tPTM13hi0tzX76vkQcAAJohfDm+0knxbXkzjXx5LS0L0/JHUxG+PPzww8kLL7xQ+f3iiy+uGq68++67VR+/bdu25MwzzxwSgrzyyivJGWeckXz88cd1vYeFCxcOeQ/1lpdffjn5+te/PiwsMvLliC5ZqHy8Rh4AAGiG8OXYSieS6fj8i5etabkwLbOq3WeyAoVHH320HHzE6JONGzeOOXy56qqrkn379iW33357+c8IXCJ4efvtt6veP26/7777hoySOeecc5JbbrllyHWXXHJJ8uqrr9ac5pS9n7PPPjt54oknrPmCdg0AANBJoWb4siUtPxgSukxD+HL11VeXA40IX7q7u4cEITGyJQKOmEq0e/fuIaNmsqlFEbxcc801yaWXXpqsXr265utF+DJv3rwh11177bXDRr6cd955NZ8j7n/vvfeWf37jjTeSvXv3Cl/QrgEAADopDPv8h490mebwJQKUCF9iPZUocfv27dsjaBg28iUCj/x1cb/29vZy+BLryNR6vQMHDow7fImROdn9IxQq3h5BTEx5Er5o17RrAACATgr1HqMpC19i+lCMSilOO4opRyeffHLNaUcR2Nx///3lqUTHH398+Tnuuuuu5JRTTikviBshSawLk4U5EwlfFi1aNGL4kj1ustaAEb5o1wAAAHRShC/jDl9i1Er8fsEFF1RuW7VqVXktl2prvsQok87OznJY8+STTybPPPNMcuqpp1amKkUgE2FMhCE33XRTOXTJwpfTTjtt1DVfIrwpjpj51re+NWr48thjjw17rPBFuwYAAKCTwrSFLxGgRPiS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C9o1AABAJ0UnRfiiCF+0awAAADopwhfhi/AF7RoAAKCTgvBF+IJ2DQAAQCdF+KIIX7RrAAAAOikIX4QvaNcAAACdFIQvwhe0awAAADopwhdF+KJdAwAA0ElB+CJ8QbsGAADopCB8Eb4IX7RrAAAAOinCF0X4ol3TrgEAADopCF+EL2jXAAAAnRSEL4rwRbsGAACgkzJjP/9SWk4Xvghf0K4BAAA6KUzO559dIoT5rvBF+IJ2DQAA0ElhcsKX7LJq2EgY4YvwBe0aAACgk0LDwpf8SJjThS/CF7RrAADAzO+knDjYSTl/sMOiTG0Z7bKh2cOXgwcPJuecc075z/z199xzT/LKK68IXxC+AAAAR3wn5eo6AgCXJrnUEw68+OKLyWOPPZYsX758WHnyySeTSy+9dNhjnnjiicp9Ojo6kp07d1aClTPPPDM5cOBAzde7//77y4+Jxz799NPJTTfdlPT09CQnnnhi5TkffPDB5K677hrxfS9atGjY+7322muT9evXj/i4G264IXn22WfHHBjdeOON5fc5rvClTWnq8q+xpvAFAABoivDl/MFOytVGoTTVyJfX0rIwLX801vDlqaeeKocg1W579913k/nz5w+7vr29vRywRChxxhlnVK5/6KGHkh/+8Ic1R7Ds2rUrueOOOyohSHb9o48+mnz88cfJ888/n6xatWpY8JEPWK655prkueeeS84666zy7fv27SuHLvFz/Bm/j/T3XbhwYfLCCy+MOUR5+eWXk69//evJm2++aeRL67VrRr4AAABN1Un5/mAn5fs+jGn5/IuXrWm5MC2zqt2nnnAggpdi+BLByq233lozfInr4j4RlqxcubISgmSjXu6+++7yY4uPW7FiReXne++9t/xn3Hf79u3lnw8dOlT+vfi4bCTNvHnzKtdlP48UvkSgc9999w0Jb2LK0y233DLkuksuuSR59dVXa44Myv4uZ599dnnUj/BF+AIAACB8af3wZUtafjAkdJlg+FIqlcojU+K6hx9+OLn55puTvXv3jhi+xP2y666//vrKiJf3338/ueiii5K333572EiapUuXDgk+4nWKU4gi4LjqqquGvW4+fLn44ovL942ROxGoZMFKMXzJPyYLaIojX84777yan0/cPwuK3njjjfJnInwRvgAAAAhfWvfzHz7SpUHhSzYaJUahxAiWCDGijBS+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

经过对比,java自带的编码器,编码后返回前端时,会多出\r\n等字符串,这会导致图片显示失败.

使用apache的编码器,编码后返回前端时,不会出多换行符,图片可以正常显示.

猜你喜欢

转载自blog.csdn.net/gaoshan12345678910/article/details/123178477
今日推荐