Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 3320
Благодарности: 916

Профиль | Отправить PM | Цитировать


D.Y. есть на VB.NET (выполнена в виде консольной программы), перенести на C# думаю проблем не составит.
А если всё же будет составлять, то для этих .NET языков есть конвертор
Код: Выделить весь код
Imports System
Imports System.Collections.Generic
Class Translit
    Shared Sub Main(ByVal CmdArgs() As String)
        Dim Cyrillic2Translit As New Dictionary(Of Char, String)
        With Cyrillic2Translit
            .Add("А", "A")
            .Add("Б", "B")
            .Add("В", "V")
            .Add("Г", "G")
            .Add("Д", "D")
            .Add("Е", "E")
            .Add("Ё", "E")
            .Add("Ж", "Zh")
            .Add("З", "Z")
            .Add("И", "I")
            .Add("Й", "Y")
            .Add("К", "K")
            .Add("Л", "L")
            .Add("М", "M")
            .Add("Н", "N")
            .Add("О", "O")
            .Add("П", "P")
            .Add("Р", "R")
            .Add("С", "S")
            .Add("Т", "T")
            .Add("У", "U")
            .Add("Ф", "F")
            .Add("Х", "H")
            .Add("Ц", "Ts")
            .Add("Ч", "Ch")
            .Add("Ш", "Sh")
            .Add("Щ", "Sch")
            .Add("Ъ", "'")
            .Add("Ы", "Y")
            .Add("Ь", "'")
            .Add("Э", "E")
            .Add("Ю", "Yu")
            .Add("Я", "Ya")
        End With

        Dim InputStr As String = vbNullString
        For Each st As String In CmdArgs
            InputStr = InputStr & st & " "
        Next
        'InputStr = Console.ReadLine
        For Each ch As Char In InputStr.ToCharArray
            If Cyrillic2Translit.ContainsKey(ch) Then
                Console.Write(Cyrillic2Translit(ch))
            ElseIf Cyrillic2Translit.ContainsKey(Char.ToUpper(ch)) Then
                Console.Write(Cyrillic2Translit(Char.ToUpper(ch)).ToLower)
            Else
                Console.Write(ch)
            End If
        Next
        Console.Read()
    End Sub
End Class
Словарь, в своё время, взят отсюда
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:58, 09-03-2010 | #2