Frage : Wie decodiere ich und starte Akten mit nicht-Lateinisch-verschlüsselten Dateinamen using JAVA?

Ich kann einige Akten mit nicht-Lateinischen Putzfrauen öffnen und sie Windows Vista PictureViewer, Spieler und Mac ansehen Windows-Vista QuickTime Vorbetrachtung in der OS-X. Z.B. Akten mit Dateinamen so prüfen:

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

But versuchend, diese in einer kundenspezifischen Java-Anwendung zu öffnen bin ich das Schreiben fails.

I versucht, die Dateinameschnur in Base64, Unicode, UTF-8 umwandelnd, aber nichts arbeitet. Möglicherweise kann ich gerade nicht die Dateinameschnur properly.

, using die Codeprobe mit Standardkodierung auf jeden Fall umwandeln, ich erhalte die Mitteilung:
I " OException auftrat in ExampleApp.openFile on (): Kann Programm nicht laufen lassen „öffnen“: CreateProcess error=2, das System kann das Akte spezifizierte "

Appreciate nicht finden jedes mögliches Code-Stückchen, das eine Lösung zeigen. Danke!

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
public statisches Boolesches openFile (Aktenakte) {
   Prozessprozeß = Null;
   Versuch {
      [] Cmd aufreihen = {„öffnen“, file.getAbsolutePath ()};
      Prozess = Runtime.getRuntime () .exec (cmd);

   } Fang (IOException e) {
      System.out.println (
      „IOException auftrat in ExampleApp.openFile on (): “ + 
       e.getMessage ());}
   }
}

Antwort : Wie decodiere ich und starte Akten mit nicht-Lateinisch-verschlüsselten Dateinamen using JAVA?

Koch,
TEXT-Funktion kann nicht [Rot] als Teil der Formatschnur nehmen.

Aber Sie konnten [Rot] mitten in einer kundenspezifischen Formatschnur wie einem von verwenden:
„Balance finanzieren = „$#, ##0.00; [Rot] „Kapitalsbalance =“ ($#, ##0) hinzufügt eine spezifizierte Anzahl (8) von Räumen zwischen Kapitalsbalance und der Zahl und
„Balance finanzieren = " * $#, ##0.00; [Rot] „Balance finanzieren = " * ($#, ##0) setzt Kapitalsbalance = auf das links und den Wert auf dem Rechtsextremismus der Zelle
„Balance finanzieren = " * $#, ##0.00_); [Rot] „Balance finanzieren = " * ($#, ##0) _. _0_0 als oben, aber zeichnet die Dollarmengen oben am Dezimalkomma

Das Resultat aller oben genannten Formatschnüre ist ein Wert, der entweder alles Schwarze (positive Zahl) oder alle, die einschließlich Text rot sind ist (negative Zahl). Sie verwenden dann eine Formel, wie das folgende, zum der Zelle zu bevölkern:
= ' Balance (C004) '! P20

Brad
Weitere Lösungen  
 
programming4us programming4us