网易云音乐.uc格式的缓存文件转.mp3

音乐的缓存文件与源文件大小相同,所以没有经过压缩,考虑异或运算,经试验发现每字节与 0xa3 异或即可

import java.io.*;

public class Change {
	public static void main(String[] args) {
		DataInputStream dis = null;
		DataOutputStream dos = null;
		try {
			File inFile = new File("D:/1.uc");
			File outFile = new File("D:/1.mp3");

			dis = new DataInputStream(new FileInputStream(inFile));
			dos = new DataOutputStream(new FileOutputStream(outFile));
			byte[] b = new byte[1024];
			int len;
			while ((len = dis.read(b)) != -1) {
				for (int i = 0; i < len; i++) {
					b[i] ^= 0xa3;
				}
				dos.write(b, 0, len);
			}

		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (dos != null) {
				try {
					dos.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
			if (dis != null) {
				try {
					dis.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
	}
}

仅供交流,请尊重版权!

你可能感兴趣的:(Java)