Visualizzazione dei risultati da 1 a 8 su 8

Discussione: copia ed incolla....

  1. #1
    Utente di HTML.it L'avatar di paul78
    Registrato dal
    Apr 2010
    Messaggi
    515

    copia ed incolla....

    ciao a tutti!!! ho un piccolo problemino....allora questo è il cod:
    codice:
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.File;
    import java.text.Normalizer;
    import org.apache.commons.io.FileUtils;
    import javax.swing.*;
    import javax.swing.filechooser.FileNameExtensionFilter;
    
    public class CopyPaste {
    
    	private static JButton buttonApri;
    	private static JScrollPane scroll = new JScrollPane();
    	private static JFrame frame = new JFrame("Frame");
    	
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		JPanel panel = new JPanel();
    		buttonApri = new JButton("Apri");
    		buttonApri.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent e) {
    				JFileChooser chooserMp3 = new  JFileChooser();
    				FileNameExtensionFilter filter = new FileNameExtensionFilter("Mp3", "mp3");
    				chooserMp3.setFileFilter(filter);
    		        int returnVal = chooserMp3.showOpenDialog(null);
    		        if(returnVal == JFileChooser.APPROVE_OPTION) {
    		        	File file = chooserMp3.getSelectedFile();			        	
    		        	String fromPath = chooserMp3.getSelectedFile().getPath();
    		 
    		        	String fromPathNew = chooserMp3.getName(file);
    		        	String output = Normalizer.normalize(fromPathNew, Normalizer.Form.NFD).replaceAll("[^\\p{ASCII}]", "");
    		        	String noSpecialPattern = "[^a-zA-Z0-9\\.\\s]+";
    		        	try{ 
    		        		String newToFile = ("/DI/basi/" + output.replaceAll(noSpecialPattern, ""));		                		                	        		
    		        		File from = new File(fromPath);
    		        		File to = new File(newToFile);
    		        		JOptionPane.showMessageDialog(null, newToFile, "Messaggio...",JOptionPane.INFORMATION_MESSAGE );
    		        		FileUtils.copyFile(from, to);
    		        	}
    		        	catch(Exception ex){
    		        		ex.printStackTrace();
    		        	}
    		        	
    		        }
    			}
    		});
    		panel.add(buttonApri);
    		scroll = new JScrollPane(panel);
    		frame.setSize(400, 400);
    		frame.getContentPane().add(scroll);
    		frame.setLocationRelativeTo(null); 
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		frame.setVisible(true);
    	}
    
    }
    se il file lo seleziono dalla stessa directory di destinazione mi da errore!!!!

    ad esempio:

    se seleziono un file dalla directory: c://song.mp3 e lo incollo in c://song.mp3 mi da errore!!!

    come posso evitare???

    help!!!

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    "mi da errore" non vuole dire un caxxo

    Per la milionesima volta: RIPORTA GLI ERRORI CHE OTTIENI!
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Visto che il problema sembra essere la directory, perchè non provi questo?
    Comunque concordo con Alex, posta gli errori che ottieni.
    I miei esempi in Java qui: http://cdpjavaexamples.altervista.org/index.html

  4. #4
    Utente di HTML.it L'avatar di paul78
    Registrato dal
    Apr 2010
    Messaggi
    515
    scusate...avete ragione....

    cmq l'errore che mi esce è questo:
    codice:
    java.lang.IllegalArgumentException: Destination '\DI\basi\Amy Winehouse  Back To Black.mp3' is not a directory
    	at org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:584)
    	at CopyPaste$1.actionPerformed(CopyPaste.java:40)
    	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    	at java.awt.Component.processMouseEvent(Unknown Source)
    	at javax.swing.JComponent.processMouseEvent(Unknown Source)
    	at java.awt.Component.processEvent(Unknown Source)
    	at java.awt.Container.processEvent(Unknown Source)
    	at java.awt.Component.dispatchEventImpl(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Window.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    	at java.awt.EventQueue.access$200(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)

  5. #5
    Scusa, ma te lo dice la stessa eccezione l'errore che commetti...

    java.lang.IllegalArgumentException: Destination '\DI\basi\Amy Winehouse Back To Black.mp3' is not a directory

    Cioé più semplice di così...ma la vuoi scritta pure in Italiano?
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326

    Re: copia ed incolla....

    Originariamente inviato da paul78
    se seleziono un file dalla directory: c://song.mp3 e lo incollo in c://song.mp3 mi da errore!!!
    Nessun file può essere copiato sopra sé stesso (che poi è un'operazione senza senso)... copiare un file significa leggerlo per scriverlo da un'altra parte... le ottimizzazioni prevedono che, mentre lo sto leggendo, lo vada a scrivere nella destinazione (esempio, leggo i primi 1024 byte e li scrivo nella destinazione, poi ne leggo altri 1024 byte e li scrivo nella destinazione)... ora, come può effettuare questa operazione se il file di destinazione è lo stesso dal quale deve anche leggere? Dopo la prima scrittura, il file è bello che andato...

    come posso evitare???
    Banalmente... verificando che origine e destinazione non coincidano, effettuando un test sui Canonical Path dei due file.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Originariamente inviato da Alex'87
    Per la milionesima volta: RIPORTA GLI ERRORI CHE OTTIENI!
    Dai, chiedi l'impossibile




    paul78, nessuna offesa, è solo che succede piuttosto spesso che qualcuno dice "c'è un errore"-e-basta

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  8. #8
    Utente di HTML.it L'avatar di paul78
    Registrato dal
    Apr 2010
    Messaggi
    515
    figurati.....non mi offendo!!!!!

    cmq ho risolto il problemino.....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.