whitespace (3 spaces and tabs to 4 spaces)

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1751179 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Javen O'Neal 2016-07-03 23:05:52 +00:00
parent c54deaf3ff
commit 227ae30154

View File

@ -34,81 +34,81 @@ import org.apache.poi.hsmf.datatypes.MAPIProperty;
* from a HMEF/TNEF/winmail.dat file * from a HMEF/TNEF/winmail.dat file
*/ */
public final class HMEFContentsExtractor { public final class HMEFContentsExtractor {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
if(args.length < 2) { if (args.length < 2) {
System.err.println("Use:"); System.err.println("Use:");
System.err.println(" HMEFContentsExtractor <filename> <output dir>"); System.err.println(" HMEFContentsExtractor <filename> <output dir>");
System.err.println(""); System.err.println("");
System.err.println(""); System.err.println("");
System.err.println("Where <filename> is the winmail.dat file to extract,"); System.err.println("Where <filename> is the winmail.dat file to extract,");
System.err.println(" and <output dir> is where to place the extracted files"); System.err.println(" and <output dir> is where to place the extracted files");
System.exit(2); System.exit(2);
} }
HMEFContentsExtractor ext = new HMEFContentsExtractor(new File(args[0])); HMEFContentsExtractor ext = new HMEFContentsExtractor(new File(args[0]));
File dir = new File(args[1]); File dir = new File(args[1]);
File rtf = new File(dir, "message.rtf"); File rtf = new File(dir, "message.rtf");
if(! dir.exists()) { if (! dir.exists()) {
throw new FileNotFoundException("Output directory " + dir.getName() + " not found"); throw new FileNotFoundException("Output directory " + dir.getName() + " not found");
} }
System.out.println("Extracting..."); System.out.println("Extracting...");
ext.extractMessageBody(rtf); ext.extractMessageBody(rtf);
ext.extractAttachments(dir); ext.extractAttachments(dir);
System.out.println("Extraction completed"); System.out.println("Extraction completed");
} }
private HMEFMessage message; private HMEFMessage message;
public HMEFContentsExtractor(File filename) throws IOException { public HMEFContentsExtractor(File filename) throws IOException {
this(new HMEFMessage(new FileInputStream(filename))); this(new HMEFMessage(new FileInputStream(filename)));
} }
public HMEFContentsExtractor(HMEFMessage message) { public HMEFContentsExtractor(HMEFMessage message) {
this.message = message; this.message = message;
} }
/** /**
* Extracts the RTF message body to the supplied file * Extracts the RTF message body to the supplied file
*/ */
public void extractMessageBody(File dest) throws IOException { public void extractMessageBody(File dest) throws IOException {
OutputStream fout = new FileOutputStream(dest); OutputStream fout = new FileOutputStream(dest);
try { try {
MAPIRtfAttribute body = (MAPIRtfAttribute) MAPIRtfAttribute body = (MAPIRtfAttribute)
message.getMessageMAPIAttribute(MAPIProperty.RTF_COMPRESSED); message.getMessageMAPIAttribute(MAPIProperty.RTF_COMPRESSED);
fout.write(body.getData()); fout.write(body.getData());
} finally { } finally {
fout.close(); fout.close();
} }
} }
/** /**
* Extracts all the message attachments to the supplied directory * Extracts all the message attachments to the supplied directory
*/ */
public void extractAttachments(File dir) throws IOException { public void extractAttachments(File dir) throws IOException {
int count = 0; int count = 0;
for(Attachment att : message.getAttachments()) { for(Attachment att : message.getAttachments()) {
count++; count++;
// Decide what to call it // Decide what to call it
String filename = att.getLongFilename(); String filename = att.getLongFilename();
if(filename == null || filename.length() == 0) { if(filename == null || filename.length() == 0) {
filename = att.getFilename(); filename = att.getFilename();
} }
if(filename == null || filename.length() == 0) { if(filename == null || filename.length() == 0) {
filename = "attachment" + count; filename = "attachment" + count;
if(att.getExtension() != null) { if(att.getExtension() != null) {
filename += att.getExtension(); filename += att.getExtension();
}
} }
}
// Save it // Save it
File file = new File(dir, filename); File file = new File(dir, filename);
OutputStream fout = new FileOutputStream(file); OutputStream fout = new FileOutputStream(file);
try { try {
fout.write( att.getContents() ); fout.write( att.getContents() );
} finally { } finally {
fout.close(); fout.close();
} }
} }
} }
} }