int outputSize = calculateOutputSize(inputData.length); char[] outputData = new char[outputSize]; int inputIndex = 0; int outputIndex = 0; while (inputIndex < inputData.length) { int octetA = inputData[inputIndex++] & 0xFF; int octetB = inputData[inputIndex++] & 0xFF; int octetC = inputData[inputIndex++] & 0xFF; outputData[outputIndex++] = base64Table[(triple >> 18) & 0x3F]; outputData[outputIndex++] = base64Table[(triple >> 12) & 0x3F]; outputData[outputIndex++] = base64Table[(triple >> 6) & 0x3F]; outputData[outputIndex++] = base64Table[triple & 0x3F]; } String base64Result = new String(outputData); from("direct:input") .marshal().base64() .streamCaching() .to("direct:output");


上一篇:
下一篇:
切换中文