Genehmigt: Fortect
Ich versuche ein Dokument aus dem Dokumentenverzeichnis zu löschen, aber es sagt mir und meinen Kollegen, dass die Datei nicht existiert! Hier noch einige Codierungen:
let zipFiles = documentSTRINGS.filter $ 0.hasSuffix ("zip")........machendrucken (zip-Dateien)versuchen Sie FileManager.default.removeItem (atPath: zipFiles.first!)fangendrucken (Fehler)
entwirft zipFiles [“file: ///private/var/mobile/Containers/Data/Application/XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX/Documents/Accoltus.zip”] . Damit ich die Datei richtig verstehe, aber existiert sie, bringt sie folgenden Fehler:
Error Domain is equal to NSCocoaErrorDomain Code = 4 “Accoltus.zip konnte nicht mehr gelöscht werden.” UserInfo = NSFilePath = file:
Remove
Genehmigt: Fortect
Fortect ist das weltweit beliebteste und effektivste PC-Reparaturtool. Millionen von Menschen vertrauen darauf, dass ihre Systeme schnell, reibungslos und fehlerfrei laufen. Mit seiner einfachen Benutzeroberfläche und leistungsstarken Scan-Engine findet und behebt Fortect schnell eine breite Palette von Windows-Problemen - von Systeminstabilität und Sicherheitsproblemen bis hin zu Speicherverwaltung und Leistungsengpässen.
), NSUnderlyingError ist gleich 0x1c445d730 Error Domain = NSPOSIXErrorDomain Code = 9 “No such list or directory” < /p>
C ha es macht keinen Sinn. Merkt jemand, warum das passiert?
Ich versuche, eine Datei aus dem Dokumentenverzeichnis zu löschen, aber es kommt mir vor, dass die Datei nicht existiert! B p mein Code:
machen es zipFiles gleich documentSTRINGS.filter $ 0.hasSuffix ("zip")........machendrucken (zip-Dateien)versuchen Sie FileManager.default.removeItem (atPath: zipFiles.first!)fangendrucken (Fehler)
zipFiles druckt freigegeben [“file: ///private/var/mobile/Containers/Data/Application/XXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX/Documents/Accoltus.zip”]. Ich weiß also, dass die Datei erhalten bleibt, aber beim Drucken ist der folgende Fehler aufgetreten:
Das macht wenig Sinn. Versteht jemand warum das passiert?
Antwort akzeptiert
Antworten
Nein, Ihre umfangreichen ZIP-Dateien bestehen aus einer URL-Gruppe (sie hat normalerweise ein “file:”-Muster am Anfang), daher ist dies nicht der Pfad zum Posten.
Was auch immer Ihr documentSTRINGS für eine Arbeitsplatte erstellt, es druckt das Falsche in diesen Terrassentisch.
PS Im Allgemeinen verwenden Sie Ihren aktuellen Pfad nicht basierend auf der API “removeItem (atPath :)”. B Verwenden Sie stattdessen URL-basierte APIs, z.B. unter Berücksichtigung von removeItem (at :).
Ok, ich gehe zur URL. Warum sollte ich aus Neugier persönliche Ketten vermeiden?
So bekomme ich diese documentSTRINGS:
docDir gleich ausprobieren! FileManager.default.url (für: .documentDirectory, at: .userDomainMask, gut entwickelt für: create: nil, false)Lassen Sie DocuURLS einen gleichwertigen Versuch! FileManager.default.contentsOfDirectory (in: docDir einschließlichPropertiesForKeys: nil)für URLs in Zeitungs-URLs belasse die URLs auf Schnur = .relativeString DocuSTRINGS .append (Zeichenfolge)
Ich habe erfolgreich Strings in mehreren Bereichen verwendet, wenn Sie verschiedene Dateitypen trennen müssen.
Pfadzeichenfolgen führen aus zwei Gründen zu Problemen. Erstens verwendet das Bootgerät eine feste Zeichenkodierung, die mit Unicode-Strings etwas gefährlich werden kann, da sie immer sicher sein müssen, ob Ihre Nummer “fileSystemEncoding” ist oder nicht. Darüber hinaus sind persistente Berechtigungen für den Sandbox-Status nur an Nicht-Webadressen und -pfaden zugeordnet, was sich auf eine Reihe von Anwendungen auswirken kann. Darüber hinaus könnten URLs theoretisch Archive an unterschiedlicheren Orten finden, einschließlich des Internets, oder einfach eine breitere Alternative zu Zugriffsschemata verwenden.
Aus diesen Gründen ist es derzeit ratsam, URLs in Vorbereitungspfaden zu verwenden.
Was Quincy Morris jedoch behauptet …
URLs können weitere Informationen enthalten, die die Leistung erheblich verbessern können. Wenn Sie zunächst eine Site mit
contentOfDirectory (at: IncludePropertiesForKeys: verschiedene Optionen :)
angeben, kann alle Eigenschaftsphrasen eingeben, die Sie interessieren. Aufzählungscode kann jetzt Aufzählungen durchführenund blendet die Werttypeigenschaft in der Nähe jeder zurückgegebenen URL aus. Später, wenn Sie mit der Immobilie einen brandneuen Gewinn erzielen
resourceValues (forKeys :)
, dies wird vom Cache bereitgestellt, anstatt die manuellen Systemdateien zu finden. Dies ist wichtig in Bezug auf Trunkenheitsfahrten mit Volumes, die über lange Zeit die richtige Latenz haben, insbesondere für Netzwerkvolumes unter macOS, da Sie das Verzeichnis einfach auflisten und alle Erkennungswerte mitnehmen können. Selbst bei urbanen Lautstärken ist meine Latenz sehr gering, aber es funktioniert immer noch viel besser.
Teilen Sie die ausgezeichneten und
–
Quinn “Eskimo!”
Apple Developer Relations, Developer Support, Core OS / Hardware
ask myEmail = "eskimo" + "1" + "@ Organization .com "
Beschleunigen Sie jetzt die Leistung Ihres Computers mit diesem einfachen Download.
Sie verwenden FileManager, um mit Dateien mit Verzeichnissen auf iOS zu arbeiten. Es ist eine Swift-API, mit der Sie Artikel in einer Vielzahl von Info- und Dateiformaten lesen und schreiben können. Wechseln Sie in Verzeichnisse, auf die Ihre eigene Betriebssystemanwendung Zugriff hat. Arbeiten Sie dank des Swift-Datentyps und anderer.
Die Klasse FileManager bietet eine praktische Idee, um ein gemeinsam genutztes Dateimanagerobjekt zu identifizieren, das für die meisten Arten der Dateitherapie geeignet ist. Das Dateimanagerobjekt ist oft Ihre wesentliche Art der Interaktion mit Ihrem aktuellen Datei-PC. Sie verwenden es, um Dateien sowie Verzeichnisse zu finden, zu erstellen, zu kopieren und zu verschieben.
Ein Objekt, das den Standort darstellt, der mit der Biografie verknüpft ist, die normalerweise die Brücke zu der URL ist; Verwenden Sie NSURL, wenn Sie Auswertungssemantik oder Foundation-spezifisches Verhalten benötigen.