मैं मैक ओएस एक्स पर रूबी 1.8.7 का उपयोग कर रहा हूं।
मैं विरासत प्रणाली के साथ संवाद करने के लिए ASCII को EBCDIC एन्कोडिंग में कैसे परिवर्तित करूं। क्या मुझे झुंझलाहट का उपयोग करना होगा?
उत्तर:
जवाब के लिए 2 № 1आप अपग्रेड कर सकते हैं लेकिन यह जरूरी नहीं कि समस्या को हल करे।
EBCDIC के कई फ्लेवर हैं (THANK YOU IBM!) इसलिए आपको "अपने मेनफ्रेम उपयोगों की सबसेट की पहचान करनी होगी।"
जब मैं प्रोग्रामिंग करना सीखता हूं, तो एक चीजमेनफ्रेम, ओह इतने साल पहले, मेनफ्रेम सिसोप्स में से कुछ को कॉल करना था, और उनके दिमाग को चुनना था। वे दिन भर में अन्य कोडसेट से EBCDIC में रूपांतरण से निपटते हैं, और संभवत: उनके पास एक उपकरण होता है जो इसे मक्खी पर कर सकता है।
एक विकल्प यह देखने के लिए होगा कि क्या उनके पास कुछ ऐसा है जो JSON या YAML को पार्स कर सकता है। अपने टेक्स्ट को utf-8 में बदलें, इसे मेनफ्रेम में भेजें, इसके अनुवादक को utf-8 से EBCDIC में परिवर्तित होने दें।
उत्तर № 2 के लिए 1
आपको रूबी का उपयोग करना चाहिए iconv पुस्तकालय (2.0 से पहले रूबी संस्करणों के लिए) या आइकनव रत्न (रूबी 2+ के लिए) कोड के रूप में EBCDIC-US निर्दिष्ट करना:
irb(main):001:0> require("iconv")
=> true
irb(main):002:0> x=Iconv.new("EBCDIC-US","ASCII")
=> #<Iconv:0x7fb4274d88d8>
irb(main):003:0> x.iconv("foo")
=> "206226226"