Öffnen von Dateinamen mit Doppelpunkt (":") in Windows 7

Ich schreibe eine Python-App, die sowohl in Windows als auch in Linux laufen sollte, aber ich habe ein Problem mit einer der Dateinamen-Konventionen. Ich muss eine JSON-Datei laden, die einen Doppelpunkt hat. Doch mit Windows 7 scheint es nicht möglich zu sein, zumindest nicht direkt.

Diese Dateien werden auf einem NFS-Laufwerk gespeichert, so dass wir es in Windows 7 sehen können, aber nicht öffnen können.

Hat jemand einen Workaround, wie es möglich ist, die JSON-Datei mit einem Doppelpunkt in Windows 7 mit Python zu lesen? Ein möglicher Workaround, den wir haben (das wir gerne vermeiden würden) ist SSH in eine Linux-Box, echo den Inhalt und schick es zurück.

Offensichtlich, wenn jemand anderes eine andere Methode hat, wäre das toll. Windows XP ist in der Lage, sie zu öffnen und sie gut zu lesen – das ist nur ein Problem mit Win 7.

-edit- Update: Wir haben herausgefunden, dass wir über das Internet auf unsere NFS / AFS Server zugreifen können. Also haben wir mit urllib2 urlopen für alle JSON-Dateien, die ungültige Zeichen enthalten, endete. Scheint gut so weit zu arbeiten.

One Solution collect form web for “Öffnen von Dateinamen mit Doppelpunkt (":") in Windows 7”

Um unter http://support.microsoft.com/kb/289627 zu zitieren:

Windows- und UNIX-Betriebssysteme haben Einschränkungen für gültige Zeichen, die in einem Dateinamen verwendet werden können. Die Liste der illegalen Zeichen für jedes Betriebssystem ist jedoch anders. Zum Beispiel kann ein UNIX-Dateiname einen Doppelpunkt verwenden (:), aber ein Windows-Dateiname kann keinen Doppelpunkt (:) verwenden. …

Um die Dateinamen-Zeichenzuordnung zu aktivieren, erstellen Sie eine Zeichenübersetzungsdatei und fügen einen Registrierungseintrag hinzu.

Zum Beispiel, die folgenden Karten die UNIX-Doppelpunkt (:) zu einem Windows-Schuss (-):

0x3a: 0x2d; Ersetzen Sie den Client: mit – auf dem Server

Wenn Sie die Dateinamen-Zeichenübersetzungsdatei erstellt haben, müssen Sie den Namen in der Systemregistrierung angeben. Um den Pfad und den Namen der Datei zu registrieren:

  • Verwenden Sie den Registrierungseditor, um den folgenden Registrierungsschlüssel zu suchen:
  • HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Server Für NFS \ CurrentVersion \ Mapping
  • Bearbeiten Sie den Wert CharacterTranslation (REG_SZ).
  • Geben Sie den vollständig qualifizierten Pfadnamen der Dateinamenzeichen-Übersetzungsdatei ein. Zum Beispiel C: \ Sfu \ CTrans.txt.
  • Wie bekomme ich IDLE, um Einfügen von Unicode-Zeichen zu akzeptieren?
  • Installieren von SciPy unter Windows
  • Python: Ändern Sie Windows 7 Master Volume
  • Umbenennen von mehreren Dateien auf der Grundlage von Dokument Text String
  • Wie kann man Shift + PrintScreen mit pyHook erfassen?
  • Tcl-Fehler: ungültiger Befehlsname tcl_findLibrary
  • Executable Python Script nicht nehmen sys.argv in Windows
  • Python-Tastatur-Ereignisse ohne GUI (nicht blockierend)
  • Python calling externe programme ohne öffnungskonsole (dos prompt) [duplizieren]
  • PyWin32 mit MakePy-Dienstprogramm und win32com, um Netzwerkstatistiken zu erhalten
  • TypeError: NoneType - Bei Verwendung von return zip_longest
  • Python ist die beste Programmiersprache der Welt.