- 浏览: 510187 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (156)
- xml (4)
- web前端 (24)
- jQuery (18)
- java (38)
- SQL (9)
- perl (2)
- OTRS (1)
- GWT (4)
- Linux (32)
- Maven (2)
- Spring (2)
- Oracle Win7 (1)
- css (8)
- eclipse (3)
- mysql (11)
- tomcat (5)
- git (4)
- javascript (22)
- font (1)
- android (1)
- log4j (1)
- email (1)
- sublime plugin (1)
- html (2)
- matches (1)
- php (3)
- apache (3)
- gd (1)
- docker (5)
- rails (1)
- RabbitMQ (1)
- Ubuntu (3)
- L2TP VPN (1)
- nodejs (1)
- oraclejet (1)
- ubutun (1)
- ntp (1)
- ngix (1)
- ssl (1)
- https (1)
- Linux,Debian (2)
- dpkg (1)
- pac (1)
- vi (1)
- vim (1)
- java,http (0)
- httpClient (0)
- shutter (1)
- shell (1)
- redmine (1)
最新评论
-
纵观全局:
配置之后,连接显示不是私密连接
keytool生成证书与Tomcat SSL配置 -
zhuchao_ko:
可以 伪造
java获得ip地址 -
longhua2003:
代码太乱了
java下载文件 -
tomhat:
ccx410 写道 安装gwt报错,unable to ret ...
GWT CellTable -
ccx410:
安装gwt报错,unable to retrieve osgi ...
GWT CellTable
可以将文件转化为Base64格式字符串,在将字符串解码输出。
调用方法:
package test;
import java.io.FileNotFoundException;
import java.io.IOException;
import junit.framework.TestCase;
public class TestBase64Convert extends TestCase {
Base64Convert baseCov = null;
public TestBase64Convert(String s) {
super(s);
}
protected void setUp() throws Exception {
baseCov = new Base64Convert();
}
protected void tearDown() throws Exception {
super.tearDown();
}
public void testIoToBase64() {
try {
String strBase64 = baseCov.ioToBase64(); //将 io 转换为 base64编码
System.out.println(">>> "+strBase64);
baseCov.base64ToIo(strBase64); //将 base64编码转换为 io 文件流,生成一幅新图片
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
转换方法:
package test;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import sun.misc.BASE64Decoder;
import com.cops.modules.util.Base64Utils;
@SuppressWarnings("restriction")
public class Base64Convert {
BASE64Decoder decoder = new BASE64Decoder();
@SuppressWarnings("static-access")
public String ioToBase64() throws IOException {
String fileName = "C:\\Users\\Lenovo\\Desktop\\qq.png"; //源文件
String strBase64 = null;
try {
FileInputStream in = new FileInputStream(fileName);
// in.available()返回文件的字节长度
// System.out.println(in.getChannel().size() +"--" + in.available());
byte[] bytes = new byte[in.available()];
// 将文件中的内容读入到数组中
in.read(bytes);
strBase64 = new BASE64Encoder().encode(bytes); //将字节流数组转换为字符串
in.close();
System.out.println(strBase64);
} catch (FileNotFoundException fe) {
fe.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
return strBase64;
}
public void base64ToIo(String strBase64) throws IOException {
String string = strBase64;
String fileName = "C:/Users/Lenovo/Desktop/gril222.jpg"; //生成的新文件
ByteBuffer value;
try {
// 解码,然后将字节转换为文件
byte[] bytes = new BASE64Decoder().decodeBuffer(string); //将字符串转换为byte数组
ByteArrayInputStream in = new ByteArrayInputStream(bytes);
byte[] buffer = new byte[in.available()];
FileOutputStream out = new FileOutputStream(fileName);
int bytesum = 0;
int byteread = 0;
while ((byteread = in.read(buffer)) != -1) {
bytesum += byteread;
out.write(buffer, 0, byteread); //文件写操作
}
//解码的另一种写法
value = Base64Utils.getFromBASE64byte(strBase64);
FileOutputStream fos = new FileOutputStream(fileName);
BufferedOutputStream bos = new BufferedOutputStream(fos);
FileChannel fc = fos.getChannel();
fc.write(value);
fos.flush();
fc.close();
fos.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
调用方法:
package test;
import java.io.FileNotFoundException;
import java.io.IOException;
import junit.framework.TestCase;
public class TestBase64Convert extends TestCase {
Base64Convert baseCov = null;
public TestBase64Convert(String s) {
super(s);
}
protected void setUp() throws Exception {
baseCov = new Base64Convert();
}
protected void tearDown() throws Exception {
super.tearDown();
}
public void testIoToBase64() {
try {
String strBase64 = baseCov.ioToBase64(); //将 io 转换为 base64编码
System.out.println(">>> "+strBase64);
baseCov.base64ToIo(strBase64); //将 base64编码转换为 io 文件流,生成一幅新图片
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
转换方法:
package test;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import sun.misc.BASE64Decoder;
import com.cops.modules.util.Base64Utils;
@SuppressWarnings("restriction")
public class Base64Convert {
BASE64Decoder decoder = new BASE64Decoder();
@SuppressWarnings("static-access")
public String ioToBase64() throws IOException {
String fileName = "C:\\Users\\Lenovo\\Desktop\\qq.png"; //源文件
String strBase64 = null;
try {
FileInputStream in = new FileInputStream(fileName);
// in.available()返回文件的字节长度
// System.out.println(in.getChannel().size() +"--" + in.available());
byte[] bytes = new byte[in.available()];
// 将文件中的内容读入到数组中
in.read(bytes);
strBase64 = new BASE64Encoder().encode(bytes); //将字节流数组转换为字符串
in.close();
System.out.println(strBase64);
} catch (FileNotFoundException fe) {
fe.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
return strBase64;
}
public void base64ToIo(String strBase64) throws IOException {
String string = strBase64;
String fileName = "C:/Users/Lenovo/Desktop/gril222.jpg"; //生成的新文件
ByteBuffer value;
try {
// 解码,然后将字节转换为文件
byte[] bytes = new BASE64Decoder().decodeBuffer(string); //将字符串转换为byte数组
ByteArrayInputStream in = new ByteArrayInputStream(bytes);
byte[] buffer = new byte[in.available()];
FileOutputStream out = new FileOutputStream(fileName);
int bytesum = 0;
int byteread = 0;
while ((byteread = in.read(buffer)) != -1) {
bytesum += byteread;
out.write(buffer, 0, byteread); //文件写操作
}
//解码的另一种写法
value = Base64Utils.getFromBASE64byte(strBase64);
FileOutputStream fos = new FileOutputStream(fileName);
BufferedOutputStream bos = new BufferedOutputStream(fos);
FileChannel fc = fos.getChannel();
fc.write(value);
fos.flush();
fc.close();
fos.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
发表评论
-
Apache HTTPClient 忽略证书
2019-01-25 15:03 1613/** * httpclient4.5.2版 * ... -
HTTP 返回码
2019-01-24 15:28 428HTTP1.1新增了五种请求方法:OPTIONS、PUT、PA ... -
Java SizeToHuman 大小转换为mb kb tb等
2017-08-21 15:12 1655public class TestSizeToHuman ... -
java常规格式化说明
2016-01-20 17:27 1384转 换 符说 明 ... -
java验证是否包含特殊字符/\:*?"<>
2016-01-05 15:25 8768public class MatchTest { ... -
JSP和JSTL获取服务器参数
2015-09-11 13:57 1200<%@ page language="java ... -
java计算时间差比较时间大小
2015-05-20 10:53 1122今天需要比较时间在网上找到然后写下: 比如:现在是:200 ... -
java发邮件
2014-11-19 15:37 1237一、 import java.util.Date; im ... -
java log4j.properties
2014-11-18 09:30 922log4j.properties配置文件如下: log4j ... -
java获得ip地址
2014-11-17 18:18 1330public String getIpAddr(Htt ... -
java下载文件
2014-11-07 10:57 1100// 文件名称中文乱码new String(filename. ... -
Android中RelativeLayout各个属性的含义
2014-10-11 15:06 878android:layout_above="@id ... -
Http发送请求
2014-09-17 15:01 902package wzh.Http; import j ... -
导出数据到excel
2014-09-03 16:20 1225/** * */ package com.chin ... -
Spring MVC @RequestBody接收JSON报HTTP 415/400问题的解决
2014-08-27 13:06 3812Ajax请求传@RequestBody(接收JSON)参数时, ... -
动态创建和修改Spring的bean配置文件
2014-08-06 18:23 43881、如果只是创建一个XML文件,那么只需要导入dom4j-1. ... -
request获取各种路径
2014-08-06 17:06 951从request获取各种路径总结 request.getRea ... -
Linux下设置开机自启动tomcat
2014-07-23 11:51 1956centos7 设置tomcat开机自启动 在tomcat/ ... -
Linux 设置环境变量JAVA_HOME ,鼠标右键打开终端,修改hostname
2014-07-03 14:21 1775一、ubuntu永久修改主机名 1、查看主机名 在Ubunt ... -
keytool生成证书与Tomcat SSL配置
2014-07-02 17:03 18176一、Keytool介绍 Keytool是一个Java数据证书 ...
相关推荐
### Java字符流和字节流详解 #### 一、引言 在Java中,I/O流主要用于处理输入输出操作,包括文件读写等。根据处理数据类型的不同,Java I/O流主要分为字节流和字符流两大类。字节流处理的是8位的字节数据,而字符流...
这段代码打开指定路径的文件,创建一个FileStream对象,然后读取文件的所有内容到字节数组中。 2. 使用MemoryStream: 如果先将文件内容读入内存,可以使用MemoryStream。但这种方式对于大文件可能会导致内存问题。...
这段代码首先将字符串`s`按照指定的编码(这里是UTF-8和GBK)转换成字节序列,然后使用`len()`函数计算字节长度。 在JavaScript中,可以使用`Buffer`对象来计算: ```javascript let s = "你好,世界!Hello, ...
这段代码首先创建了GBK和UTF-8的解码器和编码器,然后读取GBK编码的文件内容,通过GBK解码器将其转换为字符串,接着使用UTF-8编码器将字符串编码为新的字节串,最后写入目标文件。 在实际项目中,你可能需要处理...
根据给定的文件信息,本篇文章将详细解析一个基础汇编程序的设计思路及其实现方法。该程序的主要功能是在一个指定的存储区域内查找用户通过键盘输入的特定字符,并在遇到空格字符时结束搜索,最后根据查找结果输出...
本文主要介绍了一段用于将文件大小转换为易于理解的字符串格式(如“1.41KB”或“1.32MB”)的Visual Basic (VB) 源代码。此功能在多种场景下都非常实用,例如在开发文件管理器、网络传输进度显示等应用程序时。 ##...
Hex文件的内容通常是每两个字符代表一个字节,每个字节用十六进制表示。例如,“48 65 6C 6C 6F”代表字符串“Hello”。 2. **转换二进制**:读取到的十六进制字符串需要转换成对应的二进制形式。每个十六进制数字...
该程序`mycp.c`的主要功能是从命令行读取两个参数:源文件路径和目标文件路径,并将源文件的内容复制到目标文件中。程序主要依赖于C语言标准库函数以及Linux系统调用函数来完成文件操作。 ### 2. 头文件与宏定义 #...
在设计和实现字符设备驱动程序时,开发者需要完成的主要任务之一就是实现struct file_operations结构体中的各个函数。例如,read()函数用于从设备读取数据,write()函数用于向设备写入数据,ioctl()函数用于执行特定...
1. **字节集创建**:首先,你需要创建一个字节集对象,这可以通过读取文件、网络接收数据等方式完成。在易语言中,可以使用`创建字节集`或`取字节集`等函数来生成字节集。 2. **遍历字节集**:接着,遍历字节集中的...
5. **编译和运行**:最后,我们需要使用汇编器(如NASM)将源代码编译为可执行文件,并通过操作系统提供的工具运行。 以上是使用汇编语言统计字符串中特定字符个数的基本步骤。在实际应用中,可能还需要考虑错误...
综上所述,字符和字节数组之间的转换是J2ME开发中一个重要的知识点,对于提高程序的效率和适应性具有重要意义。通过理解并熟练掌握这些转换方法,开发者可以在各种应用场景中更加灵活地处理数据。
在计算机科学领域,二进制文件是存储数据的基本方式,其中包含了字节序列,这些字节可以代表各种信息,如图像、音频、程序代码或文本。"从二进制文件中取utf8的汉字"这一主题涉及到的是如何从二进制文件中提取用UTF-...
文件头是指文件开始的一段字节,不同的文件格式会有不同的文件头结构。例如,JPEG图像文件的开头通常是"FF D8 FF E0",PDF文档的开头是"%PDF-",ZIP压缩文件的头四个字节是"50 4B 03 04"等。这些特定的字节序列就是...
本文将详细探讨“VB接收多字节程序源码”,这一源码不仅提供了处理多字节数据流的基本框架,还为开发者提供了深入学习网络通信和数据处理的宝贵机会。 多字节数据流的接收在多种编程场景中都扮演着关键角色,尤其是...
题目提到的“一句话jquery取中文字节数”实际上是指利用jQuery来计算中文字符串的字节数。这在很多应用场景中非常实用,比如表单验证时限制用户输入的字符数量,特别是当需要区分英文和中文字符的长度时。 ### 二、...
这段代码实现了从字符串还原文件的功能。`ByteToFile`函数接受两个参数:`objString`为要还原的字符串,`savePath`为新文件的保存路径。 #### 注意事项 - **编码选择**:根据实际需求选择合适的编码方式,不同的...
对于文本文件,我们通常使用字符流(如`Reader`和`Writer`);而对于二进制文件(如图片、音频等),则需要使用字节流(如`InputStream`和`OutputStream`)。本文将详细介绍如何使用Java中的字节流技术来实现从文件...
这段代码会创建一个名为`test.txt`的文件,并写入字符串"Hello, World!"。如果文件已经存在,`ofstream`默认会在文件末尾追加内容。如果文件无法打开,`!outfile`会为真,提示错误。 2. **读取文件**: 使用`...
在`_data`段中,定义了一系列的DB(定义字节)数据类型,用于存储不同类型的错误消息,例如"File not found."和"File copying error."。此外,还有一个名为`fbuffer`的缓冲区,用于存储用户输入的文件名和实际的文件...