• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Đổi TCVN3 sang Unicode

Các thủ thuật liên quan đến xử lý chuỗi và thời gian
Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4764
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 518 time

Đổi TCVN3 sang Unicode

Gửi bàigửi bởi truongphu » T.Sáu 04/04/2008 9:21 pm

Thủ thuật: Đổi TCVN3 sang Unicode
Tác giả: truongphu
Mô tả: Trên bài viết của TrungDung1977, chỉ việc thay các trị của ABC là có hàm ABC2UNI.


Mã: Chọn hết

  1.  
  2. Option Explicit
  3.  
  4. Public Function ABC2Uni(str$) As String
  5. Dim i&, arrUNI() As String, sUni$, ABC$, UNI$
  6. ABC = "¸µ¶·¹¨¾»¼½Æ©ÊÇÈÉËÐÌÎÏѪÕÒÓÔÖÝ×ØÜÞãßáâä«èåæçé¬íêëìîóïñòô­øõö÷ùýúûüþ®¸µ¶·¹¡¾»¼½Æ¢ÊÇÈÉËÐÌÎÏÑ£ÕÒÓÔÖÝ×ØÜÞãßáâä¤èåæçé¥íêëìîóïñòô¦øõö÷ùýúûüþ§"
  7. UNI = "225,224,7843,227,7841,259,7855,7857,7859,7861,7863,226,7845,7847,7849,7851,7853,233,232,7867,7869,7865,234,7871,7873,7875,7877,7879,237,236,7881,297,7883,243,242,7887,245,7885,244,7889,7891,7893,7895,7897,417,7899,7901,7903,7905,7907,250,249,7911,361,7909,432,7913,7915,7917,7919,7921,253,7923,7927,7929,7925,273,225,224,7843,227,7841,258,7855,7857,7859,7861,7863,194,7845,7847,7849,7851,7853,233,232,7867,7869,7865,202,7871,7873,7875,7877,7879,237,236,7881,297,7883,243,242,7887,245,7885,212,7889,7891,7893,7895,7897,416,7899,7901,7903,7905,7907,250,249,7911,361,7909,431,7913,7915,7917,7919,7921,253,7923,7927,7929,7925,272"
  8. arrUNI = Split(UNI, ",")
  9. For i = 1 To Len(str$)
  10. If InStr(ABC, Mid(str$, i, 1)) > 0 Then
  11.  sUni = sUni & ChrW(arrUNI(InStr(ABC, Mid(str$, i, 1)) - 1))
  12.  Else
  13.  sUni = sUni & Mid(str$, i, 1)
  14.  End If
  15. Next
  16. ABC2Uni = sUni
  17. End Function
  18.  

riêng VNI2UNI, xin hẹn vài hôm


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Hình đại diện của người dùng
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: T.Tư 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 31 time
Liên hệ:

Re: Đổi TCVN3 sang Unicode

Gửi bàigửi bởi clarkkent » T.Tư 20/05/2009 2:11 pm

dientankyniem đã viết:Clarkkent cho mình xin link download ví dụ convert TCVN3 to Unicode di. Mình cảm ơn nhiều lắm, mình thử làm mãi mà không được nên mới cầu cứu mọi người. Tình huống của mình là "Dùng một câu truy vấn để lấy dữ liệu từ một bảng (dữ liệu có bảng mã TCVN3) để chuyển sang một bảng khác có bảng mã là unicode (form mới).
Tập tin đính kèm
[Demo]TCVN3 sang Unicode.rar
Demo đổi TCVN3 sang Unicode - dùng UniTextbox của Dương Quốc Hưng để hiển thị Unicode
(8.29 KiB) Đã tải 1014 lần
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

dientankyniem

Re: Đổi TCVN3 sang Unicode

Gửi bàigửi bởi dientankyniem » T.Năm 21/05/2009 8:21 am

Clackkent cho mình hỏi có control hỗ trợ unicode cho combobox, listbox, ... không? Cho mình xin với. Tại sao textbox, combobox, listbox của VB không hỗ trợ unicode nhỉ? Mình cần hiển thị unicode trên combobox và listbox nữa. Nếu có thể clackkent cho mình hỏi thêm, trong VB6 có cách nào (sử dụng câu lệnh VB) để copy cấu trúc của một bảng thành một bảng mới không. Cảm ơn Clackkent nhiều lắm.
Tập tin đính kèm
TCVN3 sang Unicode.rar
Rất mong nhận được sự giúp đỡ của Clackkent và mọi người!
(10.29 KiB) Đã tải 744 lần

Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4764
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 518 time

Re: Đổi TCVN3 sang Unicode

Gửi bàigửi bởi truongphu » T.Năm 21/05/2009 9:30 am

dientankyniem đã viết:Tại sao textbox, combobox, listbox của VB không hỗ trợ unicode nhỉ? Mình cần hiển thị unicode trên combobox và listbox nữa.


Do bạn mới quen VB.
dùng MS form 2.0 với font có mã Unicode
Tập tin đính kèm
Tieng viêt all form.rar
(3.25 KiB) Đã tải 749 lần
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

microtri
Thành viên chính thức
Thành viên chính thức
Bài viết: 49
Ngày tham gia: T.Bảy 24/04/2010 3:37 am
Been thanked: 10 time

Function chuyển đổi Font Unicode <-> TCVN3

Gửi bàigửi bởi microtri » T.Hai 24/05/2010 2:58 pm

Tên chương trình: Function chuyển đổi Font Unicode
Ngôn ngữ lập trình: VB6
Tác giả: Sưu tầm
Chức năng: Chuyển Font



Cái này độ lại từ source của vovisoft
Có thể làm thêm các font khác như vietware, vni ...
Chú ý: Add vknt.fon vào windows\font
Tập tin đính kèm
Convert_Font.rar
(6.2 KiB) Đã tải 903 lần
Sửa lần cuối bởi microtri vào ngày T.Ba 25/05/2010 8:44 am với 1 lần sửa.

ngaydautiendihoc
Thành viên danh dự
Thành viên danh dự
Bài viết: 261
Ngày tham gia: T.Hai 12/03/2007 10:55 pm
Đến từ: Hà Giang
Has thanked: 2 time
Been thanked: 1 time
Liên hệ:

Re: Đổi TCVN3 sang Unicode

Gửi bàigửi bởi ngaydautiendihoc » T.Bảy 14/08/2010 11:29 am

Xin góp vui đoạn VBA này, không nhớ rõ xuất sứ. Mọi người tham khảo xem thế nào.

Mã: Chọn hết

Sub ToUnicode()'Chuyen tu TCVN sang UNICODE
    ConvertStr Selection.Text, False
End Sub
Sub ToTCVN()'Chuyen tu UNICODE sang TCVN
    ConvertStr Selection.Text, True
End Sub
Private Sub ConvertStr(Txt As String, Optional isReversed As Boolean = False)
    Dim IStr$, I%, UN, VN
    IStr = Txt

    UN = Array(225, 224, 7843, 227, 7841, 259, 7855, 7857, 7859, 7861, 7863, 226, _
    7845, 7847, 7849, 7851, 7853, 233, 232, 7867, 7869, 7865, 234, 7871, 7873, 7875, _
    7877, 7879, 237, 236, 7881, 297, 7883, 243, 242, 7887, 245, 7885, 244, 7889, 7891, _
    7893, 7895, 7897, 417, 7899, 7901, 7903, 7905, 7907, 250, 249, 7911, 361, 7909, _
    432, 7913, 7915, 7917, 7919, 7921, 253, 7923, 7927, 7929, 7925, 273, 193, 192, 195, _
    258, 194, 212, 416, 431, 272)

    VN = Array(184, 181, 182, 183, 185, 168, 190, 187, 188, 189, 198, 169, 202, 199, 200, _
    201, 203, 208, 204, 206, 207, 209, 170, 213, 210, 211, 212, 214, 221, 215, 216, 220, _
    222, 227, 223, 225, 226, 228, 171, 232, 229, 230, 231, 233, 172, 237, 234, 235, 236, _
    238, 243, 239, 241, 242, 244, 173, 248, 245, 246, 247, 249, 253, 250, 251, 252, 254, _
    174, 193, 192, 195, 161, 162, 164, 165, 166, 167)

    For I = 0 To 75
        If isReversed And InStr(Txt, ChrW(UN(I))) <> 0 Then
            IStr = Replace(IStr, ChrW(UN(I)), "[" & VN(I) & "]")
        ElseIf InStr(IStr, ChrW(VN(I))) <> 0 Then
            IStr = Replace(IStr, ChrW(VN(I)), "[" & UN(I) & "]")
        End If
    Next
    If Len(IStr) <> Len(Txt) Then
        For I = 0 To 75
            If isReversed Then
                IStr = Replace(IStr, "[" & VN(I) & "]", ChrW(VN(I)))
            Else
                IStr = Replace(IStr, "[" & UN(I) & "]", ChrW(UN(I)))
            End If
        Next
    End If
    Selection.Text = IStr
End Sub


Quay về “[VB] Chuỗi và Thời gian”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.0 khách