(TVSeries und MediaRenamer ersatz) Ordnerstruktur anlegen und Serien umbennen (1 Viewer)

bamboocha

MP Donator
  • Premium Supporter
  • August 12, 2008
    181
    22
    40
    Hameln
    Home Country
    Germany Germany
    Hallo zusammen,

    da ich per TVSeries schon eine Zuordnung der Serien gemacht habe, suche ich nun ein Programm, was alle Serien umbenennt und eine Ordnerstruktur anlegt. ( Serienname -> Staffel X -> Serienname S0#E0# Folgenname.avi )

    Gibt es ein Tool was mit dem Plugin TVSeries zusammenarbeitet?

    Gruß bamboocha

    edit:

    Ok, ich hab mir selbst was geschrieben.

    Vielleicht kann es jemand gebrauchen.
    Falls es jemand als ausführbares Programm braucht, dann schreibt einfach und ich baue ein paar Parameter ein.

    Code:
    		String zielpfad = "C:\\Serien\\";
    		Connection conn = null;
    		SQLite.Database db = null;
    		try {
    			Class.forName("SQLite.JDBCDriver").newInstance();
    			conn = DriverManager.getConnection("jdbc:sqlite:/C:/TVSeriesDatabase4.db3");
    			java.lang.reflect.Method m = conn.getClass().getMethod("getSQLiteDatabase", null);
    			db = (SQLite.Database) m.invoke(conn, null);
    
    			PrintWriter pw = new PrintWriter(new FileWriter("Serienumbenennen.csv"));
    
    			String sql = "SELECT episodefilename, os.pretty_name, " + "  oe.seasonindex, oe.episodeindex, oe.episodename "
    					+ " FROM local_episodes le, online_episodes oe, online_series os "
    					+ " WHERE le.compositeid = oe.compositeid " + " AND oe.seriesid = os.ID";
    
    			PreparedStatement ps = conn.prepareStatement(sql);
    
    			ResultSet rs = ps.executeQuery();
    			while (rs.next()) {
    				String Serie = rs.getString(2).replace('/', ' ');
    				String Episode = rs.getString(4).replace('/', ' ');
    				String Staffel = rs.getString(3);
    				String Episodenname = rs.getString(5).replace('/', ' ');
    				if (Staffel.length() == 1) {
    					Staffel = "0" + Staffel;
    				}
    				if (Episode.length() == 1) {
    					Episode = "0" + Episode;
    				}
    
    				String back = "\\";
    				String fileformat = rs.getString(1).substring(rs.getString(1).lastIndexOf("."), rs.getString(1).length());
    
    				String quellename = rs.getString(1);
    				String zielname = zielpfad + Serie + "\\Staffel " + Staffel + back + Serie + " - S" + Staffel + "E"
    						+ Episode + " - " + Episodenname + fileformat;
    
    				(new File(zielpfad + Serie)).mkdir();
    				(new File(zielpfad + Serie + "\\Staffel " + Staffel)).mkdir();
    
    				pw.println(quellename + " ---> " + zielname);
    
    
    				if (!quellename.equals(zielname)) {
    
    
    					File quelle = new File(quellename);
    					File ziel = new File(zielname);
    
    					for (int i = 1; i < 10 && ziel.exists(); i++) {
    						zielname = zielpfad + Serie + "\\Staffel " + Staffel + back + Serie + " - S" + Staffel + "E"
    								+ Episode + " - " + Episodenname + "(" + i + ")" + fileformat;
    						ziel = new File(zielname);
    
    					}
    
    					boolean bla = quelle.renameTo(ziel);
    
    					if (!bla) {
    						System.err.println("Das war wohl nix!");
    						System.out.println(quellename + " ---> " + zielname);
    					}
    				}
    			}
    			pw.flush();
    			pw.close();
    
    		}
    		catch (Exception e) {
    			e.printStackTrace();
    		}
     

    Users who are viewing this thread

    Top Bottom