Chemin de l'URI n'est pas absolue exception java(pas android)
J'ai le morceau suivant du code source
import java.net.URI;
import java.net.URISyntaxException;
File file = new File("pic.png");
BufferedImage image = ImageIO.read(file);
String string = "pic.png";
//the code works fine until here
URI path = new URI(string);
File f = new File(path);
ColorProcessor image = new ColorProcessor(ImageIO.read(f));
Donc, le chemin que le Fichier est correct. L'Image est mise en mémoire tampon correctement aussi.
Maintenant, mon problème est que je suis l'exception suivante
Exception in thread "main" java.lang.IllegalArgumentException: URI is not absolute
at java.io.File.<init>(Unknown Source)
Pourquoi mon chemin n'est pas absolue?Et comment dois-je faire?
Si je change le chemin d'accès comme ceci:
String string = "C:'\'Users'\'Jurgen'\'newFile'\'myProject'\'pic.png";
Aussi essayé comme ceci
String string = "C:/Users/Jurgen/newFile/myProject/pic.png";
Puis-je obtenir une nouvelle exception
Exception in thread "main" java.lang.IllegalArgumentException: URI is not hierarchical
at java.io.File.<init>(Unknown Source)
P. S. ne fonctionne pas avec android forfaits pour les uri
Merci d'avance=)
OriginalL'auteur Jürgen K. | 2015-09-25
Vous devez vous connecter pour publier un commentaire.
Vous essayez de créer un identificateur de ressource uniforme, mais le nom doit suivre la url conventions. Cela signifie, qu'il est nécessaire de prévoir un régime (prendre un coup d'oeil ici, pour voir tous les programmes disponibles). Donc, dans votre cas, vous devez créer l'URI avec de la ficelle, comme
file:/pic.png
ou peut-être un autre régime.Comme pour votre chemin d'accès complet, il pourrait être fait comme:
Juste une question, pourquoi avez-vous besoin d'écrire "fichier:" devant la chemin?
Il détermine la façon dont vous pouvez gérer cette ressource. Dans la plupart des cas, il se réfère à des protocoles réseau, les données de ressources, etc. Gern geschehen)
OriginalL'auteur Stanislav