Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Visual Basic 2008 - Μετατροπή κώδικα για αλλαγή από code page utf8 σε 737 - VB 2008

  •  03-11-2009, 18:20

    Visual Basic 2008 - Μετατροπή κώδικα για αλλαγή από code page utf8 σε 737 - VB 2008

    Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;}

    Καλησπέρα σε όλους,

    Δεν είμαι έμπειρος στον προγραμματισμό και θα ήθελα την βοήθεια σας σε ένα πρόβλημα που μου παρουσιάζετε στην .NET.  Έχω φτιάξει ένα πρόγραμμα το οποίο κάνει σύνδεση σε μια βάση sql και εμπλουτίζει με στοιχειά , που παίρνει από την βάση δεδομένων,  ένα text αρχείο.

    Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;}

    Το πρόβλημα μου είναι ότι όταν ανοίγω το text αρχείο με command prompt και κάνω edit το αρχείο στα πεδία με τα ελληνικά γράμματα έχω πρόβλημα, τα εμφανίζει με περίεργα σύμβολα και πιάνουν διπλές θέσεις. Μετά από αρκετό ψάξιμο στο net βρήκα ότι το αρχείο που δημιουργό είναι UTF8 και ενώ πρέπει να είναι code page 737.

    Τι μετατροπή χεριάζετε να κάνω στων κώδικα για να δημιουργηθεί το αρχείο με CODE PAGE 737;

    Ο κώδικας που χρησιμοποιώ είναι ο εξής:

    Public Class Class1



    Public Shared Sub main()
    Dim ConnSQL1 As String = "ABC"
    Dim connection1 As SqlClient.SqlConnection = New SqlClient.SqlConnection("Data Source=
    ABC;Initial Catalog=ABC;User Id=ABC;Password=ABC")

    Dim myCMD As SqlCommand = New SqlCommand("select t1.sz_item_ref_no,left(DESCRIPTIONS.SZ_SHORT_DESCR + ' ',48), T1.N2_ITEM_PRICE from PLU as t1 inner join DESCRIPTIONS ON (DESCRIPTIONS.N0_LANGUAGE_CODE = 30 and DESCRIPTIONS.N0_AREA_CODE = 310 and DESCRIPTIONS.N0_DESCR_APPL_ID = 1 and DESCRIPTIONS.N0_DESCR_NO = t1.N0_DESCR_NO ) where t1.N0_REF_TYPE = 1 and t1.bl_weight_item = 1", connection1)


    Dim leitourgia As String

    Dim Tmhma As String
    Dim omada As String
    Dim FontSize As String
    Dim BarcodeType As String
    Dim Barcode As String
    Dim FirstLineSize As String
    Dim SecondLineSize As String
    Dim FirstLineDescr As String
    Dim SecondLineDescr As String
    Dim PluType As String
    Dim Tara As String
    Dim HBA1 As String
    Dim I As Integer

    Try

    connection1.Open()

    leitourgia = "0"
    FontSize = "0"
    Tmhma = "001"
    omada = "0000"
    BarcodeType = "1"
    Barcode = "000000000000"
    FirstLineSize = "5"
    SecondLineSize = "5"
    SecondLineDescr = " "
    PluType = "0"
    Tara = "000000"
    HBA1 = "000"
    I = 0


    Dim myReader As SqlDataReader = myCMD.ExecuteReader()
    Dim fNextResult As Boolean = True
    Using myWriter As IO.StreamWriter = New IO.StreamWriter("c:\everest\rss\plu.txt")

    Do Until Not fNextResult
    Do While myReader.Read()


    FirstLineDescr = myReader(1) '.ToString.PadRight(48, "0"c)
    myWriter.WriteLine(leitourgia & Long.Parse(myReader(0)).ToString("0000000000000") & Tmhma & omada & Long.Parse(myReader(0)).ToString("000000") & BarcodeType & "21" & Long.Parse(myReader(0)).ToString("00000") & "00000" & FirstLineSize & SecondLineSize & FirstLineDescr & SecondLineDescr & PluType & Long.Parse(myReader(2)).ToString("000000") & Tara & HBA1)
    I = I + 1

    Loop

    fNextResult = myReader.NextResult()
    Loop
    myWriter.Close()
    myReader.Close()
    End Using
    Catch ex As Exception
    Console.WriteLine(ex.Message)

    MessageBox.Show(ex.ToString)
    Finally

    connection1.Close()
    'MsgBox("Text is created.")
    Using myWriter As IO.StreamWriter = New IO.StreamWriter("c:\everest\rss\log.txt")

    myWriter.WriteLine(DateTime.Now().ToString & " text file created with " & I.ToString & " lines")

    End Using

    End Try

    End Sub

    End Class

    Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;}

    Σας ευχαριστώ για των χρόνο σας



    Thanks in advance,

    Best Regards
    Δημοσίευση στην κατηγορία:
Δείτε όλες τις δημοσιεύσεις της Θεματική Ενότητας
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems