Contar posiciones en bytes
Información general
Puede usar la propiedad Count Positions In Bytes del nodo Schema para:
- Especifique cómo se interpretan los valores especificados para las propiedades Longitud posicional y Desplazamiento posicional de los distintos campos dentro de los registros posicionales.
- Especifique cómo se interpretan los valores especificados para la propiedad Tag Offset de los propios registros posicionales.
De forma predeterminada, estos valores se interpretan como un número de caracteres. Pero cuando la propiedad Count Positions In Bytes se establece en True, estos valores se interpretan como un número de bytes.
Es posible que sea necesario establecer la propiedad Count Positions In Bytes enTrue al tratar con datos de juego de caracteres multibyte (MBCS o DBCS), o cuando los mensajes de archivo plano se originen en SAP, sistemas centrales u otros sistemas que puedan contar posiciones en bytes.
El proceso de contar las longitudes de los campos en bytes puede ser complejo si el número de bytes utilizados para codificar los caracteres es variable y puede originar algunos problemas con respecto a la determinación de los límites de campo. Cuando el desensamblador de archivos sin formato analiza un archivo sin formato en estas situaciones, intenta tomar las decisiones de análisis adecuadas según el conocimiento que tiene de la codificación de caracteres en uso.
Un ejemplo de problema de este tipo de decisión de análisis está relacionado con el tratamiento de los bytes iniciales en las codificaciones de caracteres MBCS. Los bytes iniciales son valores de byte muy conocidos que se utilizan para iniciar las codificaciones de caracteres multibyte y nunca deben aparecer de forma aislada. Al especificar la longitud de los campos mediante bytes en lugar de caracteres, pueden surgir situaciones en las que el último byte de un campo se considere un byte inicial, que no puede constituir un carácter por sí mismo. En tales casos, el desensamblador de archivos sin formato tratará el carácter que aparece justo antes del byte inicial como el último carácter del campo anterior y empezará a analizar el siguiente campo a partir del byte inicial.
Obtenga más información sobre estas propiedades en la guía de interfaz de usuario y en la referencia del espacio de nombres de api para desarrolladores.