I don't really have a reason; I just decided one day to make this program, and I intend to see it through.
It is not in the true spirit of Java, as it is *nix only. I am working on a cross-platform version, but first I want to get this one working.

Basically, a JFileChooser selects all of the files to be added to the play list, then you name the play list. You are presented with an option to play it then, or you can open the program later and play it by hitting the "play" radio button, and selecting the play list in JFileChooser.

Code:
public class make extends JFrame{
	public make() throws IOException{
		Sel s = new Sel();
		ArrayList<File> list = new ArrayList<File>();
		int yn = JOptionPane.YES_OPTION;

		while(yn == JOptionPane.YES_OPTION){
			list.add(s.sel());
			yn = JOptionPane.showConfirmDialog(null, "Add More Files?", "Continue?", JOptionPane.YES_NO_OPTION);
		}
		String name = JOptionPane.showInputDialog(null, "Name the playlist");
		FileWriter w = new FileWriter(new File(name+".jpl"));
		File[] files = new File[list.size()];
		for(int i = 0; i < list.size(); i++){
			files[i] = list.get(i);
		}
		w.write("");
		w.append("vlc ");
		String st = "";
		for(File i: files){
			st = i.toString();
			st = st.replace(" ", "\\ ");
			st = st.replace("\'", "\\\'");
			System.out.println(st);
			w.append(st + "\n ");
		}
		w.close();
		int pn = JOptionPane.showConfirmDialog(null, "Play now?", "Play now?", JOptionPane.YES_NO_OPTION);
		if(pn == JOptionPane.YES_OPTION){
			Scanner r = new Scanner(new FileInputStream(name+".jpl"));
			
			FileWriter w2 = new FileWriter(new File("tmp.sh"));
			w2.write("");		
			while(r.hasNext()){
				w2.append(r.nextLine());
			}
			
			w2.close();
			Runtime.getRuntime().exec("sh tmp.sh");
			File f = new File("tmp.sh");
			f.deleteOnExit();
		}
	}

}
to make a playlist, and to play it:
Code:
public class play extends JFrame{
	public play() throws IOException{
		Sel s = new Sel();
		File pl = s.sel();
		
		Scanner r = new Scanner(new FileInputStream(pl));
		
		FileWriter w2 = new FileWriter(new File("tmp.sh"));
		w2.write("");		
		while(r.hasNext()){
			w2.append(r.nextLine());
		}
		
		w2.close();
		Runtime.getRuntime().exec("sh tmp.sh");
		File f = new File("tmp.sh");
		f.deleteOnExit();
	}
Assume all applicable imports have been made, but what do I do from here? It doesn't work. There are no errors. Nothing happens, though.