MD5 校验值:47dc1c492bf2859d50823a0fe72087d7
a.java 文件包含反编译后的源代码,请注意,该内容仅供学习和参考使用,不得用于非法用途。
package g.b.a; import g.b.a.b.h; import g.b.a.d.f; import java.io.File; import java.io.FileNotFoundException; import java.io.RandomAccessFile; import java.util.ArrayList; import java.util.logging.Logger; import org.apache.ws.commons.util.Base64; import org.jaudiotagger.logging.ErrorMessage; import org.jaudiotagger.tag.Tag; import org.jaudiotagger.tag.asf.AsfTag; import org.jaudiotagger.tag.flac.FlacTag; import org.jaudiotagger.tag.mp4.Mp4Tag; import org.jaudiotagger.tag.vorbiscomment.VorbisCommentTag; public class a { public static Logger f4658a = Logger.getLogger("org.jaudiotagger.audio"); public File f4659b; public d f4660c; public Tag f4661d; public a() { } public void a(Tag tag) { this.f4661d = tag; } public Tag b() { if (e.FLAC.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new FlacTag(VorbisCommentTag.createNewTag(), new ArrayList()); } if (e.OGG.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return VorbisCommentTag.createNewTag(); } if (e.MP4.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new Mp4Tag(); } if (e.M4A.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new Mp4Tag(); } if (e.M4P.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new Mp4Tag(); } if (e.WMA.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new AsfTag(); } if (e.WAV.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new g.b.a.h.c(); } if (e.RA.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new g.b.a.g.c(); } if (e.RM.m.equals(this.f4659b.getName().substring(this.f4659b.getName().lastIndexOf(46)))) { return new g.b.a.g.c(); } throw new RuntimeException("Unable to create default tag for this file format"); } public File c() { return this.f4659b; } public Tag d() { return this.f4661d; } public String toString() { StringBuilder b2 = c.c.b.a.a.b("AudioFile "); b2.append(this.f4659b.getAbsolutePath()); b2.append(" --------\n"); b2.append(this.f4660c.toString()); b2.append(Base64.LINE_SEPARATOR); Tag tag = this.f4661d; return c.c.b.a.a.a(b2, tag == null ? "" : tag.toString(), "\n-------------------"); } public a(File file, d dVar, Tag tag) { this.f4659b = file; this.f4660c = dVar; this.f4661d = tag; } public void a() throws g.b.a.b.c { c.a().a(this); } public RandomAccessFile a(File file, boolean z) throws h, FileNotFoundException { Logger logger = f4658a; StringBuilder b2 = c.c.b.a.a.b("Reading file:path"); b2.append(file.getPath()); b2.append(":abs:"); b2.append(file.getAbsolutePath()); logger.config(b2.toString()); if (!file.exists()) { Logger logger2 = f4658a; StringBuilder b3 = c.c.b.a.a.b("Unable to find:"); b3.append(file.getPath()); logger2.severe(b3.toString()); throw new FileNotFoundException(ErrorMessage.UNABLE_TO_FIND_FILE.getMsg(file.getPath())); } if (z) { return new RandomAccessFile(file, "r"); } if (file.canWrite()) { return new RandomAccessFile(file, f.WRITE_MODE); } Logger logger3 = f4658a; StringBuilder b4 = c.c.b.a.a.b("Unable to write:"); b4.append(file.getPath()); logger3.severe(b4.toString()); throw new h(ErrorMessage.NO_PERMISSIONS_TO_WRITE_TO_FILE.getMsg(file.getPath())); } public static String a(File file) { int lastIndexOf = file.getName().toLowerCase().lastIndexOf("."); if (lastIndexOf > 0) { return file.getName().substring(0, lastIndexOf); } return file.getName(); } }