|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2001
Città: Prov. di Frosinone
Messaggi: 948
|
Aiuto per programmino
Ciao
![]() Essendo sommerso dai vari cd di beckup che ho fatto nel corso del tempo, e perdendo oramai 20 minuti ogni volta che devo cercare qualcosa, mi sono detto: perche' non creare un programmuzzo semplice che mi aiuti a catalogare le mie cose? L'idea e' piu' o meno questa: inserisco un cd, a cui associo un nome, e dico al programma di leggerlo. Lui vede tutti i file presenti all'interno, e inserisce le relative informazioni (nome, formato, dimensione...) all'interno di un database (io ho confidenza con oracle, ma potrei usare pure qualche file di testo per rendere la cosa piu' leggera), associandoli al nome del relativo cd. Quando mi serve qualcosa, effettuo una ricerca nel database e vedo in quale cd si trova quello che sto cercando. ![]() Il dubbio principale che ho e' come realizzare la parte in cui il programma controlla il contenuto del cd, leggendo nomi e dimensioni dei file presenti. Per il resto non dovrei avere problemi. Per il linguaggio... io conosco un po' di c, ma ho confidenza soprattutto con java. Qualche consiglio su come procedere? ![]() Grazie ![]() p.s. Naturalmente, se foste a conoscenza dell'esistenza di un programma simile e gratuito, vi sarei grato se mi avvertiste ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
|
Io avevo il tuo stesso problema; ora per catalogare uso DiscLib, freeware, con cui ti puoi creare le tue collezioni di dati, partendo dai files che già hai sui cd o sull'hard disk, questo è il sito:
http://www.lyrasoftware.com/disclib/index.html ![]()
__________________
Sun Certified Java Programmer EUCIP Core Level Certified European Certification of Informatics Professionals |
![]() |
![]() |
![]() |
#3 |
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
Non so se esista qualcosa di già pronto ma se esistesse dovrebbe per forza essere gratuito.
Della serie "ma quante cose che hai da fare PGI" ti posto un po' di codice per leggere il CD. Codice:
import java.io.*; import java.util.*; import javax.swing.filechooser.*; public class CDScanner { private String cdPath; private String cdLabel; private Vector<CDElement> fileList; public CDScanner(String cdLabel, String cdPath) { this.cdLabel = cdLabel; this.cdPath = cdPath; } public CDScanner scanCD() { fileList = new Vector<CDElement>(); File root = new File(cdPath); System.out.println("Root: "+root.getName()); recursiveScan(root); return this; } private void recursiveScan(File file) { if(file.isDirectory()) { File[] temp = file.listFiles(); for(int i = 0; i < temp.length; i++) recursiveScan(temp[i]); } else { fileList.add(new CDElement(cdLabel, file)); } } public void printList(OutputStream out) { PrintStream writer = new PrintStream(out, true); for(CDElement e : fileList) writer.println(e); } public Vector<CDElement> getList() { return fileList; } public static class CDElement { private File file; private String cdLabel; public CDElement(String cdLabel, File file) { this.cdLabel = cdLabel; this.file = file; } public boolean equals(Object o) { if(o instanceof CDElement) { CDElement temp = (CDElement)o; return temp.file.getName().equals(file.getName()) && temp.cdLabel.equals(cdLabel); } return false; } public String toString() { return "CD: " + cdLabel + " File: " + file; } public File getFile() { return file; } public String getCDLabel() { return cdLabel; } } public static void main(String[] args) { String cdPath = args[0]; FileSystemView fileSysView = FileSystemView.getFileSystemView(); String cdLabel = fileSysView.getSystemDisplayName(new File(cdPath)); StringTokenizer tempTk = new StringTokenizer(cdLabel, " "); cdLabel = tempTk.nextToken(); new CDScanner(cdLabel, cdPath).scanCD().printList(System.out); } } CDScanner scanner = new CDScanner("etichetta", "d:\\").scanCD(); La classe non è Thread-safe. Ciao. |
![]() |
![]() |
![]() |
#4 |
Bannato
Iscritto dal: Nov 2001
Città: Verona
Messaggi: 1086
|
![]() ![]() |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Oct 2001
Città: Prov. di Frosinone
Messaggi: 948
|
Quote:
![]() Io avevo pensato a qualcosa di un po' piu' semplice, ma devo dire che questo programmuccio e' perfetto ![]() Grazie ![]() |
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Oct 2001
Città: Prov. di Frosinone
Messaggi: 948
|
Quote:
![]() Grazie anche a te ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:17.