首页 > 诗词名句 > 诗词> 正文

   vb uft



下面的内容转自我的百度空间,是我收集来的,在这里看起来如果觉得排版不好,可以直接看我的空间内的文章:http://hi.baidu.com/newkedison/blog/item/1c7d2c39

下面的内容转自我的百度空间,是我收集来的,在这里看起来如果觉得排版不好,可以直接看我的空间内的文章:http://hi.baidu.com/newkedison/blog/item/1c7d2c392cc192f63b87ce12.html

有关UTF-8的一些资料2008年06月13日 星期五 08:17一, 最重要的,UTF-8和Unicode的转换

UTF-8 编码是一种被广泛应用的编码,这种编码致力于把全球的语言纳入一个统一的编码,目前已经将几种亚洲语言纳入。UTF 代表 UCS Transformation Format.

UTF-8 采用变长度字节来表示字符,理论上最多可以到 6 个字节长度。UTF-8 编码兼容了 ASC II(0-127), 也就是说 UTF-8 对于 ASC II 字符的编码是和 ASC II 一样的。对于超过一个字节长度的字符,才用以下编码规范:

左边第一个字节1的个数表示这个字符编码字节的位数,例如两位字节字符编码样式为为:110xxxxx 10xxxxxx; 三位字节字符的编码样式为:1110xxxx 10xxxxxx 10xxxxxx.;以此类推,六位字节字符的编码样式为:1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx。 xxx 的值由字符编码的二进制表示的位填入。只用最短的那个足够表达一个字符编码的多字节串。例如:

Unicode 字符: 00 A9(版权符号) = 1010 1001, UTF-8 编码为:11000010 10101001 = 0x C2 0xA9; 字符 22 60 (不等于符号) = 0010 0010 0110 0000, UTF-8 编码为:11100010 10001001 10100000 = 0xE2 0x89 0xA0

以上转换例子已经确认是正确的,不用怀疑,如果看不懂请再仔细想想

Unicode编码和utf-8编码之间的对应关系

The table below summarizes the format of these different octet types.

The letter x indicates bits available for encoding bits of the

character number.

Char. number range | UTF-8 octet sequence

(hexadecimal) | (binary)

--------------------+---------------------------------------------

0000 0000-0000 007F | 0xxxxxxx

0000 0080-0000 07FF | 110xxxxx 10xxxxxx

0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx //////A/////////

0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

这是一个Unicode编码和utf-8编码之间的对应关系表。中文的Unicode编码范围在0000 0800-0000 FFFF 中。

二, 关于BOM

UTF-8以字节为编码单元,没有字节序的问题。UTF-16以两个字节为编码单元,在解释一个UTF-16文本前,首先要弄清楚每个编码单元的字节序。例如收到一个“奎”的Unicode编码是594E,“乙”的Unicode编码是4E59。如果我们收到UTF-16字节流“594E”,那么这是“奎”还是“乙”?

Unicode规范中推荐的标记字节顺序的方法是BOM。BOM不是“Bill Of Material”的BOM表,而是Byte Order Mark。BOM是一个有点小聪明的想法:

在UCS编码中有一个叫做 ZERO WIDTH NO-BREAK SPACE 的字符,它的编码是FEFF。而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中。UCS规范建议我们在传输字节流前,先传输字符 ZERO WIDTH NO-BREAK SPACE 。

这样如果接收者收到FEFF,就表明这个字节流是Big-Endian的;如果收到FFFE,就表明这个字节流是Little-Endian的。因此字符 ZERO WIDTH NO-BREAK SPACE 又被称作BOM。

UTF-8不需要BOM来表明字节顺序,但可以用BOM来表明编码方式。字符 ZERO WIDTH NO-BREAK SPACE 的UTF-8编码是EF BB BF(读者可以用我们前面介绍的编码方法验证一下)。所以如果接收者收到以EF BB BF开头的字节流,就知道这是UTF-8编码了。

三, VB实现UTF-8转Unicode的函数

1.不使用API

Function Utf8ToUnicode(ByRef Utf() As Byte) As String

Dim utfLen As Long

utfLen = -1

On Error Resume Next

utfLen = UBound(Utf)

If utfLen = -1 Then Exit Function

On Error GoTo 0

Dim i As Long, j As Long, k As Long, N As Long

Dim B As Byte, cnt As Byte

Dim Buf() As String

ReDim Buf(utfLen)

i = 0

j = 0

Do While i = utfLen

B = Utf(i)

If (B And &HFC) = &HFC Then

cnt = 6

ElseIf (B And &HF8) = &HF8 Then

cnt = 5

ElseIf (B And &HF0) = &HF0 Then

cnt = 4

ElseIf (B And &HE0) = &HE0 Then

cnt = 3

ElseIf (B And &HC0) = &HC0 Then

cnt = 2

Else

cnt = 1

End If

If i + cnt - 1 utfLen Then

Buf(j) = ?

Exit Do

End If

Select Case cnt

Case 2

N = B And &H1F

Case 3

N = B And &HF

Case 4

N = B And &H7

Case 5

N = B And &H3

Case 6

N = B And &H1

Case Else

Buf(j) = Chr(B)

GoTo Continued:

End Select

For k = 1 To cnt - 1

B = Utf(i + k)

N = N * &H40 + (B And &H3F)

Next

Buf(j) = ChrW(N)

Continued:

i = i + cnt

j = j + 1

Loop

Utf8ToUnicode = Join(Buf, )

End Function

2. 使用API (包括Unicode转UTF-8)

Private Declare Function WideCharToMultiByte Lib kernel32 (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long, ByRef lpMultiByteStr As Any, ByVal cchMultiByte As Long, ByVal lpDefaultChar As String, ByVal lpUsedDefaultChar As Long) As Long

Private Declare Function MultiByteToWideChar Lib kernel32 (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long) As Long

Private Const CP_UTF8 = 65001

Function Utf8ToUnicode(ByRef Utf() As Byte) As String

Dim lRet As Long

Dim lLength As Long

Dim lBufferSize As Long

lLength = UBound(Utf) - LBound(Utf) + 1

If lLength = 0 Then Exit Function

lBufferSize = lLength * 2

Utf8ToUnicode = String$(lBufferSize, Chr(0))

lRet = MultiByteToWideChar(CP_UTF8, 0, VarPtr(Utf(0)), lLength, StrPtr(Utf8ToUnicode), lBufferSize)

If lRet 0 Then

Utf8ToUnicode = Left(Utf8ToUnicode, lRet)

End If

End Function

Function UnicodeToUtf8(ByVal UCS As String) As Byte()

Dim lLength As Long

Dim lBufferSize As Long

Dim lResult As Long

Dim abUTF8() As Byte

lLength = Len(UCS)

If lLength = 0 Then Exit Function

lBufferSize = lLength * 3 + 1

ReDim abUTF8(lBufferSize - 1)

lResult = WideCharToMultiByte(CP_UTF8, 0, StrPtr(UCS), lLength, abUTF8(0), lBufferSize, vbNullString, 0)

If lResult 0 Then

lResult = lResult - 1

ReDim Preserve abUTF8(lResult)

UnicodeToUtf8 = abUTF8

End If

End Function

Private Sub Command1_Click()

Dim byt() As Byte

byt = UnicodeToUtf8( 测试 )

Debug.Print Hex(byt(0)) & Hex(byt(1)) & Hex(byt(2))

Debug.Print Utf8ToUnicode(byt())

End Sub

参考资料:http://hi.baidu.com/newkedison/blog/item/1c7d2c392cc192f63b87ce12.html

vb图书管理系统源代码

以下是我精心推介的网址,希望对你有帮助。

http://www.winu.cn/thread-110569-1-1.htmlhttp://www.codesky.net/search.asphttp://www.programfan.com/code/showcode.asp?id=519http://www.winu.cn/thread-110569-1-1.htmlhttp://bbs.cnw.com.cn/viewthread.php?tid=56025http://www.code999.com/SoftView/SoftView_8058.htmlhttp://www.vbgood.com/vb.good/program-do-view-programid-40-page-1.html

我需要一个vb图书管理系统源代码和成品,希望帮助下

#include #include #include using namespace std;typedef struct student {unsigned m_id;string m_name;unsigned m_age;string m_sex;string m_address;string m_contact;string m_dormitory;struct student *m_next;}student;class CStudent {private :student *head;public :CStudent() {head = new student;head- m_id = 0;head- m_name = "noname";head- m_next = NULL;}~CStudent() {student *p = head,*q;while(p) {q = p;p = q- m_next;delete q;}}student readdata(int model); // model = 1:不读取学号,2:不读取姓名,其他,读取所有信息void entering();bool insert(const student astu);student *findid(unsigned id) const;student *findname(const string name) const;student *findsex(const string sex) const;student *finddormitory(const string dormitory) const;unsigned boys() const;unsigned girls() const;unsigned headcount() const;bool eraseid();bool erasename();bool modifyid();bool modifyname();void Show() const;void query() const;void friend statistics(const CStudent aclss);void friend erase(CStudent aclss);void friend modify(CStudent aclss);};

有那位高手有VB学籍管理系统源代码和论文

vb+access学籍信息管理系统(论文+程序)http://ww1.tabobo.cn/soft/20/124/2007/131318211005.html摘 要随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长。

面对庞大的信息量,有必要开发学生学籍信息管理系统来提高学生管理工作的效率。

通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。

本学生学籍信息管理系统包括学籍信息管理、课程信息管理、成绩信息管理三大模块

其中每个模块包括了查询学籍信息、添加学籍信息、修改学籍信息。

程序设计者可以拥有完全的权限管理系统,而学生用户只拥有查询学籍信息和查询成绩信息的权限。

本系统采用Visual Basic 6.0为开发工具,后台数据库采用Assecc 2000,操作系统为Windows2000。

关键词:学生信息、管理系统、VB、ADOAbstractWith the expanding of school and the sharp increasing of students, students' information becomes larger and larger. Facing the huge number of information, it is necessary to develop an information management system of students to improve the efficiency of work. It can provide standard management, science statistics and rapid inquiry of students' information.This system includes four following modules: status information management, class information management, course information management and score information management. The manager owns the complete management of this system, while students can only own the access to the status information and score information.This system is designed for windows 200, the develop language is Visual Basic 6.0, and the database management system is Access2000.Keywords: Students Information, Management System、VB、ADO目 录摘要…………………………………………………………………………………IAbstract …………………………………………………………………………II第一章 引言 ………………………………………………………………………1第二章 研究现状及设计目标……………………………………………………2§ 2.1大量的学籍信息管理 …………………………………………………2§ 2.2实现方便简捷快速有效的管理 ……………………………………………2第三章 要解决的几个关键问题……………………………………………………3§ 3.1学籍信息管理 …………………………………………………………3§ 3.2课程信息管理 …………………………………………………………3第四章 系统结构与模型 …………………………………………………………9§ 4.1学籍信息管理系统详细设计 …………………………………………9§ 4.2学籍管理系统主窗体的创建…………………………………………12§ 4.3 系统用户管理模块的创建……………………………………………14第五章 系统实现技术………………………………………………………………16§ 5.1系统组成………………………………………………………………16第六章 性能测试与分析……………………………………………………………17§ 6.1保证软件质量和各模块的完善行……………………………………17§ 6.2对系统实用性做更好分析……………………………………………17§ 6.3创建公用模块 ………………………………………………………20§ 6.4系统用户管理模块的创建 …………………………………………21§ 6.5学籍管理模块的创建…………………………………………………26§ 6.6课程设置模块的创建…………………………………………………35§ 6.6课程设置模块的创建 …………………………………………………39第七章 性能测试与分析 …………………………………………………………47§ 7.1 性能的测试 ……………………………………………………………47§ 7.2 性能分析 ………………………………………………………………47结束语 ……………………………………………………………………………48致谢……………………………………………………………………………49参考文献 ……………………………………………………………………………50

谁有VB.NET+ADO“学生信息管理系统”的代码

财易合同管理软件是一款从合同起草、合同签订、合同文本管理、结算安排、执行进展、合同变更、到实际结款以及对合同收付款情况统计分析进行全方位管理的合同管理软件,是帮助企业进一步完善合同管理的专业合同管理软件!财易合同管理软件的主要功能有:合同执行,合同收付款计划,合同收付,合同提醒,合同附件,合同扫描,合同备注,往来单位管理,商品资料管理,基本资料,权限设置及系统设置等。

财易合同管理软件是目前国内性价比最高的,最好用的合同管理软件。

界面美观大方,操作简单,自定义功能特别强大,是目前国内唯一一款提供超级强大自定义功能,真正实现软件DIY的合同管理软件。

除此之外,软件还有以下特色功能:1. 整个操作界面完全类似于 Office,支持不同界面之间的切换。

2.财易软件拥有强大的自定义功能:所有表格均可自定义设置列宽,修改列标题名称,用户可以设置某列是否显示,以及可以按照需要自定义设置哪些字段为查询字段,这些都是财易系列软件独有的功能。

(吐血推荐)。

3.强大的自定义导入功能,可以轻松导入往来单位和合同信息。

导入功能支持自定义选择列,所见即所得,在导入界面上完美再现要导入的表格内容,只需在同一界面上完成列的选择,即可成功导入。

4.支持树形分类,让您能更方便地为合同归类。

5.完善的报表统计功能,可以在报表中自定义查询字段,使报表能够按您的查询要求快速而准确地找到所需要的合同资料以及统计结果。

6.支持导出PDF,图片格式,网页格式(htm,html),Excel,CSV等格式。

7. 支持自定义报表,可以自定义设置您想要的报表打印格式,任意更换打印机及纸张类型,支持套打。

8.软件自动保留用户的操作习惯,例如窗体的界面位置等,会跟您上次登陆时的一致。

9. 完善的权限管理和数据库备份功能,让您使用起来得心应手!10.贴心的提醒功能,使您的合同管理更轻松!财易合同管理软件目前已广泛应用于金融、通讯、制造、商业贸易,化工、建材、五金水电、医药、汽配、食品、服装、电子、电脑、仓储、房地产、化装品等行业。

我有vb的学生管理系统源码,如何制作成程序呢

你需要有一个Microsoft Visual Basic,一般用6.0,.NET的用更高的版本企业版或者绿色版的看情况,最好是企业版然后打开VB6,文件-打开工程-选择源码后缀为.vbp的文件,然后文件-生成***.exe(***是工程名,也是最后生成exe的文件名)

转载请注明出处诗词vb uft-8转gb2312