How to list files and folders in Java ME

From Nokia Developer Wiki
Jump to: navigation, search


This article demonstrates how to list files and folders of a mobile device. The FileConnection API (JSR-75) offers the FileConnection.list() method for this purpose. The FileConnection.directorySize() and FileConnection.fileSize() methods make it possible to get directory and file sizes.

The full source code for a test MIDlet:

Source code: FileListMIDlet.java

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.Enumeration;
import javax.microedition.io.file.*;
import javax.microedition.io.*;
import java.io.*;
public class FileListMIDlet extends MIDlet implements CommandListener {
private Form form;
private Command exitCommand;
public void startApp() {
form = new Form("C:/ contents");
exitCommand = new Command("Exit", Command.EXIT, 1);
public void pauseApp() {
public void destroyApp(boolean unconditional) {
protected void getFileList(String path) {
try {
FileConnection fc = (FileConnection)Connector.open(path, Connector.READ);
Enumeration filelist = fc.list("*", true); //also hidden files are shown
String filename;
while(filelist.hasMoreElements()) {
filename = (String) filelist.nextElement();
fc = (FileConnection)Connector.open(path + filename, Connector.READ);
if(fc.isDirectory()) {
long size = fc.directorySize(false);
form.append(filename+" - "+Integer.toString((int)size)+"B\n");
} else {
long size = fc.fileSize();
form.append(filename+" - "+Integer.toString((int)size)+"B\n");
catch (IOException ioe) {
System.out.println("IOException: "+ioe.getMessage());
catch (SecurityException se) {
System.out.println("SecurityException: "+se.getMessage());
public void commandAction(Command c, Displayable d) {
if (c == exitCommand) this.notifyDestroyed();

See also

This page was last modified on 9 February 2014, at 12:30.
203 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.


Thank you!

We appreciate your feedback.