JAK: Konwertowanie ciągów znaków na wielkie litery, małe litery lub format nazwy własnej za pomocą programu Visual Basic .NET

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 312897 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Ten artykuł został opublikowany wcześniej pod numerem PL312897
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Streszczenie

W tym artykule pokazano, jak konwertować ciąg znaków na wielkie litery, małe litery lub format nazwy własnej.

Program Visual Basic .NET umożliwia konwertowanie ciągów znaków na kilka sposobów. Jeśli używa się klas architektury Microsoft .NET Framework, można użyć metod klas String i TextInfo. Program Visual Basic .NET obejmuje również wbudowane funkcje UCase, LCase i StrConv, które służą do tego samego celu.

Klasy String można użyć do konwertowania ciągu znaków na wielkie lub małe litery, ale do konwertowania go na format nazwy własnej trzeba użyć metody z klasy System.Globalization.TextInfo.

Konwertowanie ciągu znaków za pomocą klasy String lub funkcji języka Visual Basic

W tej sekcji opisano, jak użyć metod klasy String lub wbudowanych funkcji języka Visual Basic (UCase, LCase i StrConv) do konwertowania ciągu znaków na wielkie litery, małe litery lub format nazwy własnej.

Konwertowanie ciągu znaków na wielkie litery

Klasa String zawiera metodę statyczną o nazwie ToUpper. Metody tej można użyć do konwertowania ciągu znaków na wielkie litery. Można również użyć funkcji UCase lub StrConv. Na przykład:
    Dim upper as String = "konwertowany z małych liter"
    Console.WriteLine(upper.ToUpper())
    Console.WriteLine(UCase(upper))
    Console.WriteLine(StrConv(upper,VbStrConv.UpperCase))

Konwertowanie ciągu znaków na małe litery

Metoda ToLower jest odpowiednikiem metody ToUpper. Metoda ToLower konwertuje ciąg znaków na małe litery. Można również użyć funkcji LCase lub StrConv. Na przykład:
    Dim lower as String = "KONWERTOWANY Z WIELKICH LITER"
    Console.WriteLine(lower.ToLower())
    Console.WriteLine(LCase(lower))
    Console.WriteLine(StrConv(lower,VbStrConv.LowerCase))

Konwertowanie ciągu znaków na format nazwy własnej

Aby konwertować ciąg znaków na format nazwy własnej, przekaż ciąg znaków do funkcji StrConv wraz ze stałą określającą, jaka operacja ma zostać wykonana. Na przykład:
    Dim title as String = "konwertowany na format nazwy własnej"
    Console.WriteLine(StrConv(title, VbStrConv.ProperCase))

Konwertowanie ciągu znaków za pomocą klasy TextInfo

W tej sekcji opisano, jak używać klasy TextInfo do konwertowania ciągów znaków. Ponieważ metod konwersji należących do klasy TextInfo można używać do sterowania informacjami o kulturze, celowe może być użycie tej klasy, gdy trzeba określić ustawienia kultury.

TextInfo jest elementem obszaru nazw System.Globalization. Klasa TextInfo oferuje metody ToUpper, ToLower i ToTitleCase służące do konwertowania ciągu znaków odpowiednio na wielkie litery, małe litery lub format nazwy własnej. W odróżnieniu od metod klasy String, metody klasy TextInfo nie są metodami statycznymi i wymagają wystąpienia klasy.

W większości sytuacji jako kultury domyślnej można używać kultury, która jest aktualnie używana. Informacje o kulturze to właściwość wątku, w którym wykonywany jest kod. Aby uzyskać informacje o kulturze, trzeba uzyskać dostęp do bieżącego wątku i pobrać z niego właściwość CurrentCulture. Następnie można utworzyć obiekt klasy TextInfo. Na przykład:
    Dim curCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
    Dim tInfo As TextInfo = curCulture.TextInfo()
Następujący kod przykładowy ilustruje, jak wywołać trzy metody konwersji ciągów znaków klasy TextInfo:
    Dim title as String = "konwertowany za pomocą klasy textinfo"
    Console.WriteLine(tInfo.ToTitleCase(title))
    Console.WriteLine(tInfo.ToLower(title))
    Console.WriteLine(tInfo.ToUpper(title))
Jeśli niezbędne jest utworzenie ciągów znaków o określonych ustawieniach kultury lub operowanie takimi ciągami, można użyć jednego z konstruktorów przeładowanych klasy TextInfo do utworzenia ciągów znaków z dowolnymi dostępnymi opcjami kultury.

Przykład „krok po kroku”

  1. Otwórz nowy projekt aplikacji konsoli w programie Visual Basic .NET.
  2. Zastąp kod w pliku Module1.vb następującym kodem:
    Imports System.Globalization
    Imports System.Threading
    Module Module1
    
        Public Sub main()
    
            Dim title As String = "to jest konwertowany ciąg znaków"
    
            Console.WriteLine("Metody wbudowane")
            Console.WriteLine("----------------")
            Console.WriteLine(UCase(title))
            Console.WriteLine(LCase(title))
            Console.WriteLine(StrConv(title, VbStrConv.UpperCase))
            Console.WriteLine(StrConv(title, VbStrConv.LowerCase))
            Console.WriteLine(StrConv(title, VbStrConv.ProperCase))
            Console.WriteLine()
    
            Console.WriteLine("Klasa String")
            Console.WriteLine("------------")
            Console.WriteLine(title.ToUpper())
            Console.WriteLine(title.ToLower())
            Console.WriteLine()
    
            Console.WriteLine("Klasa TextInfo")
            Console.WriteLine("--------------")
            'Pobierz informacje o kulturze z bieżącego wątku.
            Dim curCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
            'Utwórz obiekt TextInfo.
            Dim tInfo As TextInfo = curCulture.TextInfo()
            'Konwertuj na wielkie litery.
            Console.WriteLine(tInfo.ToUpper(title))
            'Konwertuj na małe litery.
            Console.WriteLine(tInfo.ToLower(title))
            'Konwertuj na format nazwy własnej.
            Console.WriteLine(tInfo.ToTitleCase(title))
        End Sub
    
    End Module
  3. Naciśnij klawisze CTRL+F5, aby skompilować i uruchomić projekt.
  4. Przejrzyj wyniki w oknie Console.

Uwaga dotycząca właściwości InvariantCulture

W przypadku używania obszaru nazw Globalization do konwertowania danych, jeśli zamiast wyświetlać, przechowuje się konwertowane dane, można użyć właściwości InvariantCulture klasy CultureInfo.

InvariantCulture nie jest ani neutralną, ani określoną kulturą; jest to kultura, która nie rozróżnia kultur. Jeśli do przechowywania danych używa się właściwości InvariantCulture, dane są przechowywane w spójny sposób, niezależnie od określonych ustawień kultury, jakie mogą być używane. Aby uzyskać więcej informacji, zobacz sekcję Materiały referencyjne.

W poprzednim kodzie przykładowym jest używana właściwość CultureInfo bieżącego wątku:
Dim curCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
Aby w tym samym scenariuszu użyć właściwości InvariantCulture, użyj następującego kodu:
Dim curCulture As CultureInfo = CultureInfo.InvariantCulture

Materiały referencyjne

Aby uzyskać dodatkowe informacje, zobacz następujące tematy w Pomocy online programu Microsoft Visual Studio .NET:
  • Using the InvariantCulture Property
  • TextInfo Class
  • CultureInfo Class
  • String Class

Właściwości

Numer ID artykułu: 312897 - Ostatnia weryfikacja: 9 kwietnia 2003 - Weryfikacja: 1.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft Visual Basic .NET 2002 Standard Edition
Słowa kluczowe: 
kbhowto kbhowtomaster KB312897

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com