byte[] serObj = getBytesFromFile(file);
final byte[] CLRF = { '\r', '\n' };
Base64 encoded = new Base64 (72,CLRF);
System.out.println(encoded.encodeBase64String(serObj));
我在格式化输出时遇到问题,输出当前显示为单行,而不是根据构造函数中的args。它应该是一个包含72个字符的行,然后是CLRF和下一行。有人能指出代码有什么问题吗?另外,我怎么能在String中手动追加/添加换行符?我尝试使用一个字母计数器,但是当计数器到达第72个字符时,我仍然坚持如何添加\ n。
public static int count(Reader in) throws IOException {
char[] buffer = new char[4096];
int count = 0;
int len;
while((len = in.read(buffer)) != -1) {
count += len;
}
return count;
}
答案 0 :(得分:1)
您调用的encodeBase64String(byte[])
方法是static
方法,因此方法调用不会使用您创建的Base64
实例。
您应该使用encodeToString(byte[])
方法,这是一种实例方法。