मुझे एक प्रोग्राम लिखना होगा जो विभिन्न लंबाई के तारों के माध्यम से ब्राउज़ करेगा और केवल उन लोगों का चयन करें जो मेरे द्वारा परिभाषित सेट से प्रतीकों का उपयोग करके लिखे गए हैं (विशेष रूप से जापानी अक्षरों)। स्ट्रिंग्स में विभिन्न भाषाओं (जर्मन, फ्रेंच, अरबी, रूसी, अंग्रेजी इत्यादि) में लिखे गए शब्द होंगे। जाहिर है कि संभावित पात्रों की बड़ी संख्या है। मुझे नहीं पता कि किस संरचना का उपयोग करना है? मैं अभी डेल्फी 7 का उपयोग कर रहा हूं। क्या कोई सुझाव दे सकता है कि इस तरह के कार्यक्रम को कैसे लिखना है?डेल्फी में यूनिकोड तारों के साथ काम करना 7
उत्तर
स्पष्ट रूप से आप डेल्फी 2010 के साथ बेहतर होंगे, क्योंकि डेल्फी 7 में वीसीएल यूनिकोड तारों से अवगत नहीं है। आप डेल्फी 7 में वाइडस्ट्रिंग प्रकारों और वाइडचर प्रकारों का उपयोग कर सकते हैं, और आप एक यूजर इंटरफेस बनाने में मदद के लिए टीएनटी यूनिकोड घटक जैसे घटक सेट को स्थापित कर सकते हैं जो आपके परिणाम प्रदर्शित कर सकता है।
एक बहुत बड़े सेट प्रकार के लिए, टीबीआईटी जैसी बिट सरणी का उपयोग करने पर विचार करें। लंबाई 65536 की एक बिट सरणी प्रत्येक यूटीएफ -16 कोड-पॉइंट को रखने के लिए पर्याप्त होगी। जांच की जा रही है, तो चार एक्स सेट वाई में है, मूल रूप से होगा:
function WideCharsInSet(wcstr:WideString; wcset:TBits):Boolean;
var
n:Integer;
wc:WideChar;
begin
result := false;
for n := 1 to Length(wcstr) do begin
wc := wcstr[n];
if wcset[Ord(wc)] then
result := true;
end;
end;
procedure Demo;
var
wcset1:TBits;
s:WideString;
begin
wcset1 := TBits.Create;
try
// 1157 - Hangul Korean codepoint I found with Char Map
wcset1[1157] := true;
// go get a string value s:
s := WideChar(1157);
// return true if at least one element in set wcset is found in string s:
if WideCharsInSet(s,wcset1) then begin
Application.MessageBox('Found it','found it',MB_OK);
end;
finally
wcset1.Free;
end;
end;
मैं भी डेल्फी 2010 (? क्यों 2009 के साथ अब और परेशान) करने के लिए स्विच करने के लिए सलाह देते हैं!
यदि माइक लिस्केके से Unicode Library के साथ आप अटक गए संभावित मामले में कुछ हद तक सहायक हो सकते हैं।
लिंक अब टूट गया है – CyprUS
@ साइप्रस, तय! –
आपके द्वारा वर्णित तरीके से स्ट्रिंग की सरल प्रसंस्करण के लिए, सुझावों से दूर न करें कि आपको नवीनतम कंपाइलर और यूनिकोड सक्षम फ्रेमवर्क में अपग्रेड करना चाहिए। यूनिकोड समर्थन स्वयं अंतर्निहित विंडोज एपीआई द्वारा प्रदान किया जाता है जो कि निश्चित रूप से (सीधे) "डेनफी के" गैर-यूनिकोड "संस्करणों से" यूनिकोड संस्करण "से सुलभ है।
मुझे संदेह है कि यदि आपके प्रश्न में उल्लिखित उद्देश्यों के लिए आपको आवश्यक यूनिकोड समर्थन की आवश्यकता नहीं है तो the JEDI JCL में प्रदान किए गए यूनिकोड समर्थन से प्राप्त किया जा सकता है।
किसी भी दृश्य घटक समर्थन के लिए आपको TNT control set की नि: शुल्क होने की अपील की आवश्यकता हो सकती है।
+1, उत्कृष्ट तर्क। स्वीकार किए गए उत्तर में कोड संकलित करता है और डेल्फी 4 में भी बेकार ढंग से काम करता है। – mghie
अब डेल्फी को ट्रैडीज और अद्यतित लोगों में विभाजित किया गया है। –
मैं इस बारे में सोचना पसंद करता हूं कि "लोगों को कम से कम झगड़ा, परेशानियों और व्यय के साथ काम करना" और "वास्तव में आवश्यक चीज़ों के बारे में सोचने के बिना परिवर्तनों में परिवर्तन के लिए परिवर्तन" करना पसंद है। :) – Deltics
- 1. यूनिकोड के लिए डेल्फी 7 से डेल्फी एक्सई या 2010 में स्थानांतरित करना?
- 2. दोषपूर्ण यूनिकोड तारों को ठीक करना
- 3. डेल्फी में EXE आइकन सेट करना 7
- 4. डेल्फी रूपांतरण यूनिकोड मुद्दे
- 5. डेल्फी में वायरस 7
- 6. डेल्फी 7 में GetStackTrace?
- 7. यूनिकोड तारों के साथ काम करने के लिए मैं str.translate कैसे प्राप्त करूं?
- 8. डेल्फी 200 + यूनिकोड + चार आकार
- 9. डेल्फी 2010 और यूनिकोड
- 10. डेल्फी से 7-ज़िप का उपयोग करना?
- 11. यूनिकोड डेटा के साथ LoadFromFile
- 12. डेल्फी: विंडोज 7
- 13. printf के साथ तारों को केंद्रित करना()
- 14. डेल्फी 7 रूपों, विस्टा
- 15. पायथन में बहुत लंबे तारों के साथ कैसे काम करें?
- 16. डेल्फी में यूनिकोड कंसोल आवेदन 2009
- 17. जांचें कि क्या डेल्फी (यूनिकोड)
- 18. डेल्फी 7 tguid तुलना
- 19. डेल्फी 7 - OmniXML पुस्तकालय
- 20. डेल्फी 7 ऑटो पूर्ण
- 21. रजिस्ट्री रीडस्ट्रिंग विधि विंडोज 7 में डेल्फी 7
- 22. मैं डेल्फी के साथ वाईफ़ाई के साथ काम करना चाहता हूं। कैसे?
- 23. JSON तारों में यूनिकोड मानों को कैसे प्रबंधित करें?
- 24. मैं पाइथन सिद्धांतों में यूनिकोड तारों को कैसे शामिल करूं?
- 25. क्या सी ++ 11 नियमित अभिव्यक्ति यूटीएफ -8 तारों के साथ काम करते हैं?
- 26. डेल्फी संस्करणों में एक यूनिकोड स्ट्रिंग को संभालना <= 2007
- 27. AppDomain.Assembly के साथ काम करना
- 28. एकाधिक वर्ण एन्कोडिंग युक्त एक स्ट्रिंग के साथ काम करना
- 29. डेल्फी में एक विज़ार्ड इंटरफ़ेस बनाना 7
- 30. डेल्फी में एक TPageControl फ्लैट बनाना 7
उत्तर में सभी अच्छी बिट्स +1 करें। bigsets, टीएनटी और डी 7 में यह नहीं करने की सलाह देते हैं। –
मैंने आपके लिए यहां एक और उपयोगी कोड लिखा है, टोफिग –
डेल्फी 2010 में एक महान विशेषता है TStringList क्लास डिस्क से फ़ाइल लोड करने की क्षमता है, बाइट-मार्कर से यूटीएफ 8 या यूटीएफ 16 एन्कोडिंग स्वचालित रूप से निर्धारित करती है, और इसी तरह। यह आपके काम का एक और हिस्सा है, टोफिग, जिसे 2009/2010 की तुलना में डेल्फी के संस्करण पर और अधिक मुश्किल बना दिया जाएगा। –