Archives: File Handling

Java – Extract links from HTML page

[code lang=”java”]import java.io.FileReader;
import java.util.ArrayList;

import javax.swing.text.MutableAttributeSet;
import javax.swing.text.html.HTML.Attribute;
import javax.swing.text.html.HTML.Tag;
import javax.swing.text.html.HTMLEditorKit.ParserCallback;
import javax.swing.text.html.parser.ParserDelegator;

public class Main {

public final static void main(String[] args) throws Exception {
final ArrayList<String> list = new ArrayList<String>();

ParserDelegator parserDelegator = new ParserDelegator();
ParserCallback parserCallback = new ParserCallback() {
public void handleText(final char[] data, final int pos) {
}

public void handleStartTag(Tag tag, MutableAttributeSet attribute, int pos) {
if (tag == Tag.A) {
String address = (String) attribute.getAttribute(Attribute.HREF);
list.add(address);
}
}

public void handleEndTag(Tag t, final int pos) {
}

public void handleSimpleTag(Tag t, MutableAttributeSet a, final int pos) {
}

public void handleComment(final char[] data, final int pos) {
}

public void handleError(final java.lang.String errMsg, final int pos) {
}
};
parserDelegator.parse(new FileReader("a.html"), parserCallback, false);
System.out.println(list);
}

}[/code]


Java – Convert PNG to JPEG Image File

[code lang=”java”]import java.awt.Color;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

public class ConvertImageFile {

public static void main(String[] args) {

BufferedImage bufferedImage;

try {

//read image file
bufferedImage = ImageIO.read(new File("c:\\javanullpointer.png"));

// create a blank, RGB, same width and height, and a white background
BufferedImage newBufferedImage = new BufferedImage(bufferedImage.getWidth(),
bufferedImage.getHeight(), BufferedImage.TYPE_INT_RGB);
newBufferedImage.createGraphics().drawImage(bufferedImage, 0, 0, Color.WHITE, null);

// write to jpeg file
ImageIO.write(newBufferedImage, "jpg", new File("c:\\javanullpointer.jpg"));

System.out.println("Done");

} catch (IOException e) {

e.printStackTrace();

}

}

}[/code]


Java – Change File Date / Time using Commons FileUtils

[code lang=”java”]import java.io.IOException;
import org.apache.commons.io.FileUtils;

import java.io.File;

public class Main {

public static void main(String[] args) {
try {
File file = new File("pic.jpg");
long lastModified1 = file.lastModified();
FileUtils.touch(file);
long lastModified2 = file.lastModified();
System.out.println("File date / time was updated: " + (lastModified2 > lastModified1));
} catch (IOException ex) {
ex.printStackTrace();
}
}

}[/code]

Output:

File date / time was updated: true