2017-07-27 2 views
0

ich einen Netzwerkpfad haben, die wie folgt aussieht:Zugriff auf einen Netzwerkpfad und auf einen Dateipfad coverting Java mit

\\rennas01\\test\Project\\InputFiles 

Ich brauche für meine Datei-Instanz dieses Netzwerkpfad als abstrakte Pfad zu verwenden:

File src=new File(path); 

Wie kann ich diesen Netzwerkpfad wie etwas aussehen:

File src=new File("\\\\rennas01\\test\\Project\\InputFiles") 

Da es ein Pfad zu einem Netzwerk s Hared Fahrer. Die Datei akzeptiert dies nicht als korrekten Parameter. Vielen Dank im Voraus!

+0

@Lino Dies funktioniert nicht "\\ rennas01 \\ test \\ Project \\ InputFiles" ist ein Pfad zu einem freigegebenen Laufwerk in einem Netzwerk. Die Datei wird dies nicht als korrekten Parameter betrachten. –

+0

@matrix_hsi brauchen Sie wirklich, dass es wie 'neue Datei aussieht (" \\ rennas01 \\ test \\ Project \\ InputFiles ")'? es sollte als 'neue Datei funktionieren (" \ \\\\ rennas01 \\ test \\ Project \\ InputFiles ")' angenommen, dass 'rennas01' bekannt ist und zugänglich ist –

Antwort

1

In Ihrem Beispiel entkam Sie jeden Backslash aber Sie haben die eine am Anfang des Weges vergessen:

// this path points to wrong location: \rennas01\test\Project\InputFiles 
File src=new File("\\rennas01\<test\\Project\\InputFiles"); 

eigentlich sein sollte:

// this path points to desired location: \\rennas01\test\Project\InputFiles 
File src=new File("\\\\rennas01\\test\\Project\\InputFiles"); 

Diese kleine Korrektur Ihr Problem lösen soll.

+0

Dies wird nicht funktionieren. Ich brauche eine Lösung um die Konzepte von URL und URI. Es ist egal wie viele Backslash ich gebe oder überspringe. Es wird nicht funktionieren. Das Java-Dateiobjekt akzeptiert nur tatsächliche Dateipfade. Es ist ein freigegebener Pfad auf einem Netzlaufwerk. –

+1

@matrix_hsi Datei akzeptiert gemeinsamen Pfad auf einem Netzlaufwerk, zum Beispiel funktioniert das folgende perfekt auf meinem System 'Datei f = neue Datei (" \\\\ xx.xx.xx.xx \\ jre \\ test \\ out_9 .Log"); System.out.println ("Länge mit f.length():" + f.length()); 'wobei xx.xx.xx.xx die IP des entfernten Rechners ist. Vielleicht solltest du deine Frage etwas weiter ausarbeiten. –

+1

Sie können auch das Paket 'java.nio.file' betrachten. Die 'Paths.get'-Methode benötigt sowohl' String'-Pfad als auch 'URI'. Außerdem kann ein 'Pfad' mit der' toFile() 'Methode in' File' konvertiert werden, wenn Ihr Code nur 'File' akzeptiert. –

Verwandte Themen