Vraag : Hoe decodeer lanceer ik en dossiers met niet-Latijns-gecodeerde fileNames gebruikend JAVA?

Ik kan verscheidene dossiers met nietLatijnse klusjes openen en hen bekijken in het Uitzicht PictureViewer van Vensters, de Speler van Quicktime van het Uitzicht van Vensters, en de Voorproef van MAC OS X. Bijvoorbeeld, testdossiers met fileNames als dit:

£¢∞ † ¥¥¶¶.gif
ÅÆÖÔ1.jpg
¿ ¿ ¿ attachment.gif
¿ ¿ ¿ attachment.txt
ÔÆÃbmp 1.BMP

But deze in een toepassing van douaneJAVA probeert te openen schrijf ik geprobeerde fails.

I omzettend het fileName koord in Base64, Unicode, utf-8, maar niets werkt. Misschien weet ik enkel het niet hoe te om het fileName koord properly.

om te zetten in ieder geval, gebruikend de codesteekproef met het standaard coderen, krijg ik het bericht:
I " OException kwam in ExampleApp.openFile () voor: Kan „in werking stellen niet open“ programma: CreateProcess error=2, het systeem kan dossier gespecificeerde "

Appreciate vinden geen codefragment dat een oplossing zou aantonen. Dank!

" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
public statische openFile van Boole (het dossier van het Dossier) {
   Het proces van het proces = verklaart nietig;
   probeer {
      Koord [] cmd = {„open“, file.getAbsolutePath ()};
      proces = Runtime.getRuntime () .exec (cmd);

   } vangst (IOException e) {
      System.out.println (
      „IOException kwam in ExampleApp.openFile () voor: “ + 
       e.getMessage ());}
   }
}

Antwoord : Hoe decodeer lanceer ik en dossiers met niet-Latijns-gecodeerde fileNames gebruikend JAVA?

Kok,
De functie van de TEKST kan niet [Rood] als deel van het formaatkoord nemen.

Maar u kon [Rood] in het midden van een het formaatkoord van de Douane als één van gebruiken:
Het „saldo van het fonds = „$#, ##0.00; [Rood] het „saldo van het Fonds =“ ($#, ##0) voegt een gespecificeerd aantal (8) ruimten tussen het saldo van het Fonds en het aantal toe
Het „saldo van het fonds = " * $#, ##0.00; [Rood] het „saldo van het Fonds = " * ($#, ##0) zet het saldo van het Fonds = op de linkerzijde en de waarde op uiterst rechts van de cel
Het „saldo van het fonds = " * $#, ##0.00_); [Rood] het „saldo van het Fonds = " * ($#, ##0) _. _0_0 zoals hierboven, maar de lijnen de dollar bedraagt omhoog op het decimale punt

Het resultaat van alle bovengenoemde formaatkoorden is een waarde die of al zwarte (positief aantal) of al rood met inbegrip van tekst is (negatief aantal). U zou dan een formule als het volgende gebruiken om de cel te bevolken:
= ' Saldo (C004) '! P20

Spijker zonder kop
Andere oplossingen  
 
programming4us programming4us