Aprobado: Fortect
Estoy tratando de eliminar un archivo debido al directorio de documentos, ¡pero me dice que el archivo en particular no existe! Aquí hay más codificaciones individuales:
let zipFiles = documentSTRINGS.filter $ 0.hasSuffix ("zip")........hacerimprimir (archivos zip)intente FileManager.default.removeItem (atPath: zipFiles.first!)capturaimprimir (error)
fotografías zipFiles [“file: ///private/var/mobile/Containers/Data/Application/XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX/Documents/Accoltus.zip”] . Así que entiendo completamente el archivo, pero existe, arroja su siguiente error actual:
Error Domain = NSCocoaErrorDomain Code = 4 “Accoltus.zip no pudo constituirse eliminado”. UserInfo = NSFilePath = file: /
Eliminar
Aprobado: Fortect
Fortect es la herramienta de reparación de PC más popular y eficaz del mundo. Millones de personas confían en él para mantener sus sistemas funcionando de forma rápida, fluida y sin errores. Con su sencilla interfaz de usuario y su potente motor de análisis, Fortect encuentra y soluciona rápidamente una amplia variedad de problemas de Windows, desde la inestabilidad del sistema y los problemas de seguridad hasta la gestión de la memoria y los cuellos de botella en el rendimiento.
), NSUnderlyingError = 0x1c445d730 Error Domain = NSPOSIXErrorDomain Code = 2 “No hay esa lista o directorio”
C ‘el juego no tiene sentido. ¿Alguien sabe una explicación de por qué está sucediendo esto?
Estoy intentando eliminar un archivo de todo el directorio de documentos, ¡pero me dice que el archivo específico no existe! Por mi código personal:
permite que zipFiles sea igual a documentSTRINGS.filter $ 0.hasSuffix ("zip")........hacerimprimir (archivos zip)intente FileManager.default.removeItem (atPath: zipFiles.first!)capturaimprimir (error)
zipFiles se imprime en [“file: ///private/var/mobile/Containers/Data/Application/XXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX/Documents/Accoltus.zip”]. Entonces, sé que el archivo existe, aun así se produjo el siguiente error durante la impresión:
Esto no tiene mucho sentido. ¿Alguien sabe que es por eso que está sucediendo esto?
Respuesta aceptada
Respuestas
No, su amplio rango que apunta a archivos zip consiste en un hilo de URL (tiene un patrón “archivo:” al principio), pero esta no es la ruta para cargar.
Independientemente de lo que su documentSTRINGS cree una tabla, este tipo de impresión imprime lo incorrecto en esa tabla.
PD: En general, no utilice el objetivo basado en las apis “removeItem (atPath :)”. B En su lugar, utilice API basadas en URL como removeItem (en :).
Ok, iré a la URL. ¿Por qué debería hacer cadenas personales por curiosidad?
Así es como obtengo estos documentSTRINGS:
let docDir = do! FileManager.default.url (para: .documentDirectory, en: .userDomainMask, bueno para: start: nil, false)¡Deje que DocuURLS lo intente por igual! FileManager.default.contentsOfDirectory (en: docDir incluyendoPropertiesForKeys: nil)para las URL en las URL del documento dejar urls en cadena significa .relativeString DocuSTRINGS .append (cadena)
Obtengo cadenas utilizadas con éxito en múltiples ámbitos para diferentes tipos de archivos.
Las cadenas de ruta causan problemas por dos razones. Primero, el sistema de arranque hace uso de una codificación de caracteres fija, lo que puede hacer que la contratación de cadenas Unicode sea un poco peligrosa porque siempre debe estar seguro si su cadena es simplemente “fileSystemEncoding” o no. Además, los permisos persistentes con el estado de la zona de pruebas solo son direcciones y rutas asociadas y no web, lo que puede afectar algunas estrategias. Además, las URL teóricamente podrían encontrar archivos a través de ubicaciones más diversas, incluida Internet, u obtener los beneficios de una alternativa más amplia a los esquemas de acceso.
Por estas razones, actualmente se recomienda para utilizar realmente las URL en las rutas de preparación para.
Lo que dijo Quincy Morris, a pesar del hecho …
Las URL pueden contener otro conocimiento de que el sudor puede mejorar significativamente el rendimiento. Por ejemplo, si encuentra que especifica un sitio con
contentsOfDirectory (en: IncludePropertiesForKeys: otras posibilidades :)
, puedes teclear la frase de premisas que te interese. El código de enumeración puede probar la enumeracióny oculta la propiedad de tipo de valor en todas las URL devueltas. Más tarde, cuando obtenga ingresos de la propiedad
resourceValues (forKeys :)
, pasa a ser proporcionado por la caché en lugar de acceder al manual del sistema en general archivos. Esto es importante para terminar de conducir con volúmenes que tienen la latencia más deseable durante mucho tiempo, especialmente para libros de red en macOS, porque puede enumerar un sitio web y obtener todos los valores de interés en el camino. Incluso con volúmenes urbanos, su latencia es muy baja, pero aún así funciona mucho mejor.
Comparte la diversión y, como consecuencia,
–
Quinn “¡Eskimo!”
Relaciones con desarrolladores de Apple, soporte para desarrolladores, SO / hardware principal
tell myEmail = "eskimo" + "1" + "@ apple .online"
Está utilizando FileManager para trabajar con archivos con directorios en iOS. Es en gran medida una API Swift que te ayuda a leer y luego a escribir artículos en una variedad de datos e incluso formatos de archivo. Cambie a los directorios a los que tiene acceso la aplicación del sistema de trabajo en ejecución. Trabaje con el tipo de datos Swift real y otros.
La clase FileManager proporciona una forma conveniente de identificar un objeto de administrador de archivos compartidos que ahora es adecuado para la mayoría de los tipos de manipulación de archivos. El objeto del administrador de archivos es a menudo su técnica principal para interactuar con su sistema de archivos actual. Lo utilizan para buscar, crear, copiar y enviar archivos y directorios.
Un objeto que representa la ubicación de la biografía general que es el puente hacia la URL; Use NSURL cuando necesite probar la semántica según el comportamiento específico de Foundation.