友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

VB2008从入门到精通(PDF格式英文版)-第37章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






Character Mapping 



A single character takes 16 bits of space; and the space that a string consumes depends on the  

number of characters in a buffer。 If a buffer is 10 characters long; then the entire buffer takes up  

160 bits of space。  

      A single character is 16 bits long so that a buffer can store text in a multitude of different  

formats。 The standardized length is due to a standard called Unicode。 

      Consider the character a。 Philosophically; how do you know that an a is an a? For humans;  

that’s easy because our brains are trained to recognize the curve and look of an a。 Now look at  

the Russian letter shown in Figure 3…10。 



Figure 3…10。 A Russian letter 



      What letter does Figure 3…10 show? It looks like an H; right? But paring it to the English  

language; it is an N。 The Russian language has its own set of letters; and someone has deter

mined that a Russian H is an English N。 Figure 3…11 is a mapping of the Russian letters to the  

English letters。 



Figure 3…11。 Mapping of Russian letters to English letters 


…………………………………………………………Page 90……………………………………………………………

68        CH AP T E R   3   ■    L E A R N IN G   AB OU T   ST R I N G   M A N I P U L AT IO N S   



                If I were learning Russian; I would want the mapping provided in Figure 3…11。 The mapping  

           gives me an idea of what each letter in Russian represents。 You could think of Figure 3…11 as a  

          lookup table。 The puter has the same sort of need; because a puter does not under

           stand letters。 A puter understands only numbers and thus uses lookup tables that map a  

           set of letters to a set of numbers。  

                There are many lookup tables; such as American Standard Code for Information Inter

           change (ASCII)。 For example; using ASCII; the letter a maps to the number 97。 The problem  

          with ASCII is that it works well for English; but works horribly for other languages。 ASCII was  

           extended to deal with Western European languages; but still fails for languages such as Chinese;  

           Russian; and Arabic。 

                The solution chosen by  is Unicode。 Unicode is the definition of a set of lookup tables  

           that map to letters for all of the languages of the world。 

                For the most part; you will not have to concern yourself with the Unicode; because   

           manages everything transparently。 This was not the case many years ago; when programmers  

          had to manage the lookup tables themselves。 So consider yourself lucky that you did not expe

           rience this pain in developing multilingual applications。 



           Dealing with Languages and Cultures 



           Managing strings in  does not stop with Unicode。  is very innovative in that it under

           stands concepts such as culture and language; which are a reflection of how humans speak and  

          live。 The ideas of culture and language do not exist in other programming environments。 

                Consider Switzerland as an example。 Throughout Switzerland; there are mountains that  

          happen to separate four individual languages: German; Italian; Romansch; and French。 Even  

          with the four languages; the Swiss all trade the same currency and write numbers the same  

          way。 

                In previous programming environments; the language would be tied to a particular country。  

          This works fine for France; Germany; and the United States; but fails miserably for Canada;  

           Switzerland; Belgium; and India。 You need to separate language from culture; because multiple  

          languages are used in different cultures。 For example; Italian is spoken in Switzerland and Italy。  

           French is spoken in France; Switzerland; Luxembourg; and Canada。 German is spoken in  

           Germany; Switzerland; and Austria。  



           Setting Culture and Language in Windows 



          The Windows operating system allows you to set the culture and language of your puter;  

           regardless of the language in which Windows is operating。 Figure 3…12 shows an example。 

                The example in Figure 3…12 is running a German version of Windows in Switzerland。 The  

          language is English; and the culture is Canada。 It would seem that Windows would get confused;  

          but in fact; if you write your  application properly; multilanguage support is simple。 


…………………………………………………………Page 91……………………………………………………………

                                           CH AP T E R   3   ■    L E AR N IN G   AB O U T   ST R I N G   M A N I PU L A TI O N S  69 



Figure 3…12。 Setting the culture and language in Windows 



Parsing and Processing Numbers 



The culture and country bee important when interacting with numbers and dates that  

are stored as strings。 Imagine retrieving a string buffer with an embedded number and then  

attempting to perform an addition; as illustrated by Figure 3…13。 



             Variables a and b are 

             assigned buffers that 

               represent numbers 



 Dim a As String = 〃1〃 

Dim b As String = 〃2〃 

Dim c As String = a + b                  Adding two buffers is a 

                                         concatenation operation 

      Variable c contains 

          the value 12 



Figure 3…13。 Performing arithmetic on numbers represented as strings can lead to unexpected results。 


…………………………………………………………Page 92……………………………………………………………

70        CH AP T E R   3   ■    L E A R N IN G   AB OU T   ST R I N G   M A N I P U L AT IO N S   



                Adding numbers is performing a mathematical operation。 When the add operation is  

           performed on strings; it always results in a buffer concatenation。 The add operation is a very  

           simple way to concatenate string buffers together。 

                However; concatenation is not the aim of the example。 The aim 
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!