Plist automati c перевести в новый список - PullRequest
0 голосов
/ 06 мая 2020

Я сделал автоматический переводчик c plist, чтобы сгенерировать новый plist. Visual Basi c 2008

Private Sub Form1_Load (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает MyBase.Load Dim fileReader, substring, target, out As String Dim bcount, bcount_2 As Integer

    fileReader = My.Computer.FileSystem.ReadAllText("C:\Users\jafernandez.SVQRS\Desktop\JsonDataSP.plist")
    For a = 1 To Len(fileReader)
        out = out & Mid(fileReader, a, 1)
        If Mid(fileReader, a, 8) = "<string>" Then
            'es una string, traducir string
            bcount = a
            Do While Mid(fileReader, bcount, 9) <> "</string>"
                substring = substring & Mid(fileReader, bcount + 8, 1)
                bcount = bcount + 1
            Loop
            substring = Mid(substring, 1, Len(substring) - 8)
            substring = "string>" & Translate(substring, "en", "es", False) & "</string>"
            out = out & substring
            ' Tenemos en out la salida con la cadena traducida, ahora posicionamos puntero
            a = a + ((bcount - a) + 8)
            substring = ""

        End If

    Next
    'MsgBox(fileReader)

    My.Computer.FileSystem.WriteAllText("C:\Users\jafernandez.SVQRS\Desktop\JsonDataSP.plist_tra", out, True)

End Sub
Public Function Translate(ByVal strInput As String, ByVal strFromLanguageCode As String, ByVal strToLanguageCode As String, ByVal blnTargetAlphabet As Boolean) As String

    Dim strURL, att As String
    Dim objHTTP As Object
    Dim objHTML As Object
    Dim objDivs As Object, objDiv
    Dim strTranslatedT0 As String
    Dim strTranslatedO1 As String

    ' send query to web page
    strURL = "https://translate.google.com/m?hl=" & strFromLanguageCode & _
        "&sl=" & strFromLanguageCode & _
        "&tl=" & strToLanguageCode & _
        "&ie=UTF-8&prev=_m&q=" & strInput

    objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
    objHTTP.Open("GET", strURL, False)
    objHTTP.setRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)")
    objHTTP.send("")

    ' create a html document
    objHTML = CreateObject("htmlfile")
    With objHTML
        .Open()
        .Write(objHTTP.responseText)
        '.getElementsByTagName("div")
        .Close()
    End With

    ' o1 has Anglicised translation, t0 as tranlsation in target language
    objDivs = objHTML.getElementsByTagName("div")


    For Each objDiv In objDivs
        'att = objDiv.getAttribute("charset")
        If objDiv.className = "t0" Then
            strTranslatedT0 = objDiv.innerText
        End If
    Next objDiv




    ''For Each objDiv In objDivs
    ''If objDiv.className = "o1" Then
    '' strTranslatedO1 = objDiv.innerText
    ''End If
    ''If objDiv.className = "t0" Then
    '' strTranslatedT0 = objDiv.innerText
    ''End If
    ''Next objDiv

    ' choose which to return
    ''If blnTargetAlphabet Then
    Translate = strTranslatedT0
    ''Else
    ''Translate = strTranslatedO1
    ''End If

Очистка: obj HTML = Ничего objHTTP = Ничего

End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...