Quel est le caractère de retour chariot dans un as/400 db?
J'ai un client qui exécute un as/400. J'ai un ftp d'un fichier plat. Ils me disent de leur retour charaters sont RN. Je ne reconnais pas cet, ne pouvait pas trouver quoi que ce soit sur elle, et leur type de technologie est Nick Burns, donc il refuse de me donner dirtection. Est-il un standard code de retour pour as/400?
Je devrais avoir mentionné que j'ai un c# .NET 2.0 application console.
lol @ Nick Burns. "Moooove!", "Oh, au fait... Vous êtes les bienvenus!" Mais sur une note plus sérieuse... cela sonne plus comme un ServerFault question. Migrer?
Ne pouvez-vous pas ftp (en utilisant le mode binaire) un exemple de "corriger" le fichier à partir de l'as/400 pour votre système unix, exécutez od-x sur le fichier, et de décoder la tête pour savoir comment les lignes de la fin?
Pourquoi l'OS/400 haine? S'il lui posait sur Windows, Max, ou Linux, pas un ne pense même de la déplacer pour serverfault. RPG et CL programmeurs sont des programmeurs trop, vous le savez 🙂
Parlez-vous des retours à la ligne pour délimiter les enregistrements, ou entendez-vous des retours à la ligne qui sont en fait une partie de données (c'est à dire intégré dans un seul champ)?
Pas la haine. Avant la mention d'une application console cela sonnait purement comme un OS spécifique à la question qui semblait mieux convenir à ServerFault.
Ne pouvez-vous pas ftp (en utilisant le mode binaire) un exemple de "corriger" le fichier à partir de l'as/400 pour votre système unix, exécutez od-x sur le fichier, et de décoder la tête pour savoir comment les lignes de la fin?
Pourquoi l'OS/400 haine? S'il lui posait sur Windows, Max, ou Linux, pas un ne pense même de la déplacer pour serverfault. RPG et CL programmeurs sont des programmeurs trop, vous le savez 🙂
Parlez-vous des retours à la ligne pour délimiter les enregistrements, ou entendez-vous des retours à la ligne qui sont en fait une partie de données (c'est à dire intégré dans un seul champ)?
Pas la haine. Avant la mention d'une application console cela sonnait purement comme un OS spécifique à la question qui semblait mieux convenir à ServerFault.
OriginalL'auteur donde | 2010-05-10
Vous devez vous connecter pour publier un commentaire.
L'as/400 utilise EBCDIC comme un jeu de caractères, plutôt que de DOS ou Unix jeu de caractères ASCII. Sous Unix, un fichier texte les lignes se terminent généralement avec l'ASCII
'\n'
et dans le DOS lignes se terminent généralement avec l'ASCII'\r\n'
.Lorsque vous FTP, si vous utilisez le
EBCDIC
type de transfert, plutôt que debin
ouASCII
; ftp est censé traduire ces caractères.EBCDIC retour de chariot est 0x0D, tout comme l'ASCII.
EBCDIC saut de ligne est 0x25, à la différence de l'ASCII 0x0A.
As/400 EBCDIC nouvelle ligne a 0x15 -
NEL
(à Côté de la Ligne").Pour plus d'informations sur la fin de la ligne de l'arrêt, voir cet article de Wikipédia.
En dépit de l'article de Wikipédia, je ne suis pas convaincu que NEL est couramment utilisée pour as/400 caractère de saut de ligne. Nous avons toujours utilisé des caractères CR et LF sur l'as/400 lors de la communication avec d'autres machines.
Je dois ajouter que nous avons également jamais stockées les retours à la ligne dans un champ, à l'exception spécifiquement pour les données qui sont finalement destinés à une machine, ne pas utiliser sur l'as/400. Et bien sûr, dans ces situations, nous permettrait d'utiliser LF ou CRLF, pas de NEL.
Est la LF vous utilisez 0x25 ou 0x0A?
Si le reste des données est EBCDIC et je suis plutôt sur une autre étape de traduction (comme vous le dites, FTP doit), je laisse comme 0x25. Cependant, je ne prépare parfois ASCII des données sur as/400, auquel cas il sera 0x0A.
OriginalL'auteur Heath Hunnicutt
Peut-être qu'ils signifient \r\n?
OriginalL'auteur ChrisBD
\r\n
CRLF
Carridge retour suivit d'un saut de Ligne
mais, dois-je simplement ajouter une chaîne à la fin de la ligne?
OriginalL'auteur Midhat
Puisque vous parlez de vous à l'aide de C#, il suffit d'utiliser De l'environnement.De retour à la ligne et ne vous inquiétez pas à ce sujet 🙂
Il n'existe pas ".Net retour chariot" - .Net utilise le transport de retour pour le système que vous êtes en cours d'exécution. Pour FTP: Si vous utilisez le bon type de transfert (EBCDIC, comme mentionné par Heath ci-dessus), il sera de traduire le retour des personnages pour vous entre les différents systèmes.
OriginalL'auteur BlueRaja - Danny Pflughoeft