teclado signo que ingles ejemplos dieresis castellano apostrofo apostrofe file server coldfusion

file - signo - Archivo del servidor ColdFusion con carácter de apóstrofo



el apostrofe en castellano (2)

Cuando intento subir un archivo con un apóstrofo, aparece el error:

Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.

si el nombre del archivo es test''s.pdf, obtengo el error. Pero si cambio el nombre a test.pdf, no hay ningún error.

¿Alguien sabe por qué?

Gracias


Mi suposición es que el apóstrofo es uno de esos apóstrofos multi-caracteres que Microsoft Word a menudo usa. Un personaje como ese puede no ser un caracter válido para su sistema de archivos OS.

Es posible que desee volver a codificar el sistema para usar un archivo temporal al cargarlo y luego cambiarle el nombre a un nombre de archivo válido después de que la carga se haya realizado correctamente.

Aquí hay información básica sobre la solución de problemas.

Envuelva su código en un bloque try / catch y descargue el error completo a la salida de la página. Ejemplos de usar try / catch / dump a continuación. Los siguientes ejemplos fuerzan un error dividiendo por cero.

Para cfml basado en etiquetas:

<cftry> <cfset offendingCode = 1 / 0> <cfcatch type="any"> <cfdump var="#cfcatch#" label="cfcatch"> </cfcatch> </cftry>

Para cfscript cfml:

<cfscript> try { offendingCode = 1 / 0; } catch (any e) { writeDump(var=e, label="Exception"); } </cfscript>


Tuve una situación similar en la que creaba dinámicamente nombres de archivos para páginas que creaban archivos de Excel a partir de resultados de consultas. El enfoque que tomé fue crear una función que reemplazara a todos los personajes malos con algo. Aquí hay parte de esa función.

<cfargument name="replacementString" required="no" default=" "> <cfscript> var inValidFileNameCharacters = "[///*''?[/]:><""|]"; return reReplace (arguments.fileNameIn, inValidFileNameCharacters, arguments.replacementString, "all"); </cfscript>

Es posible que desee considerar un enfoque opuesto. En lugar de declarar caracteres no válidos y reemplazarlos, declare los válidos y reemplace todo lo que no esté en la lista de caracteres válidos.

Sugiero que sea una función disponible en todas las páginas apropiadas. Cómo lo haces depende de tu situación.