简体中文 | English
OpenCC.NET — это неофициальная версия C# проекта OpenCC (Open Chinese Convert), которая поддерживает преобразование на уровне лексики между упрощённым и традиционным китайским, а также преобразование вариантов и слов между регионами.
Обновление для версии 1.0:
Найдите OpenCCNET в Nuget и установите его, введите пространство имён OpenCCNET в проекте. Пакет поставляется со словарями (файлы словарей) и JiebaResource (ресурсные файлы, необходимые для запуска Jieba.NET), которые по умолчанию будут скопированы в каталог вывода программы.
Перед использованием вызовите ZhConverter.Initialize()
, который имеет два параметра по умолчанию: путь к словарям и ресурсы Jieba.NET. (оригинальный ZhUtil.Initialize()
устарел).
OpenCC.NET предоставляет два стиля API:
Метод | Введение | Примечание |
---|---|---|
HansToHant(string) | Упрощённый китайский => традиционный китайский (стандарт OpenCC) | |
HansToTW(string, bool=false) | Упрощённый китайский => традиционный китайский (Тайвань) | параметр bool определяет, следует ли преобразовывать региональные идиомы на Тайване |
HansToHK(string) | Упрощённый китайский => традиционный китайский (Гонконг) | |
HantToHans(string) | Традиционный китайский => упрощённый китайский | |
HantToTW(string, bool=false) | Традиционный китайский => традиционный китайский (Тайвань) | параметр bool определяет, следует ли преобразовывать региональные идиомы на Тайване |
HantToHK(string) | Традиционный китайский => традиционный китайский (Гонконг) | |
TWToHans(string, bool=false) | Традиционный китайский (Тайвань) => упрощённый китайский | параметр bool определяет, следует ли преобразовывать региональные идиомы в материковом Китае |
TWToHant(string, bool=false) | Традиционный китайский (Тайвань) => традиционный китайский (стандарт OpenCC) | параметр bool определяет, следует ли преобразовывать региональные идиомы в материковом Китае |
HKToHans(string) | Традиционный китайский (Гонконг) => упрощённый китайский | |
HKToHant(string, bool=false) | Традиционный китайский (Гонконг) => традиционный китайский (стандарт OpenCC) | |
KyuuToShin(string) | Японский (Kyūjitai) => Японский (Shinjitai) | |
ShinToKyuu(string) | Японский (Shinjitai) => Японский (Kyūjitai) | |
Console.WriteLine(ZhConverter.HansToTW(input, true)); | ||
// 为我的电脑换了新的内存,打开电脑后感觉看网络视频更加流畅了 |
Console.WriteLine(ZhConverter.HansToHK(input)); // Для моего компьютера поменяли новую оперативную память, после включения компьютера кажется, что смотреть сетевые видео стало более плавно
Console.WriteLine(ZhConverter.ShinToKyuu("沖縄県内の学校"));
#### Extension Methods of string
| Метод | Описание | Примечание |
|----|----|----|
| ToHantFromHans() | Из упрощённого китайского в традиционный китайский (стандарт OpenCC) | |
| ToTWFromHans(bool = false) | Из упрощённого китайского в традиционный китайский (Тайвань) | Параметр bool определяет, следует ли преобразовывать в региональные идиомы Тайваня |
| ToHKFromHans() | Из упрощённого китайского в традиционный китайский (Гонконг) | |
| ToHansFromHant() | Из традиционного китайского в упрощённый китайский | |
| ToTWFromHant(bool = false) | Из традиционного китайского в традиционный китайский (Тайвань) | Параметр bool определяет, следует ли преобразовывать в региональные идиомы Тайваня |
| ToHKFromHant() | Из традиционного китайского в традиционный китайский (Гонконг) | |
| ToHansFromTW(bool = false) | Из традиционного китайского (Тайвань) в упрощённый китайский | Параметр bool определяет, следует ли преобразовывать в региональные идиомы материкового Китая |
| ToHantFromTW(bool = false) | Из традиционного китайского (Тайвань) в традиционный китайский (OpenCC стандарт) | Параметр bool определяет, следует ли преобразовывать в региональные идиомы материкового Китая |
| ToHansFromHK() | Из традиционного китайского (Гонконг) в упрощённый китайский | |
| ToHantFromHK() | Из традиционного китайского (Гонконг) в традиционный китайский (OpenCC стандарт) | |
| ToShinFromKyuu() | Японский (Кюдзитай) в японский (Синдзитай) | |
| ToKyuuFromShin() | Японский (Синдзитай) в японский (Кюдзитай) | |
```csharp
var input = "為我的電腦換了新的記憶體,開啟電腦後感覺看網路影片更加流暢了";
// 爲我的電腦換了新的記憶體,開啓電腦後感覺看網路影片更加流暢了
Console.WriteLine(input.ToHantFromTW());
// 为我的电脑换了新的记忆体,开启电脑后感觉看网路影片更加流畅了
Console.WriteLine(input.ToHansFromTW());
// 为我的电脑换了新的内存,打开电脑后感觉看网络视频更加流畅了
Console.WriteLine(input.ToHansFromTW(true));
// 独逸連邦共和国
Console.WriteLine("獨逸聯邦共和國".ToShinFromKyuu());
По умолчанию OpenCC.NET использует jieba.NET для реализации сегментации, и проект использует статический JiebaSegmenter:
public static JiebaSegmenter Jieba = new JiebaSegmenter();
Его можно настроить с помощью ZhConverter.ZhSegment.Jieba
, подробности см. в jieba.NET.
OpenCC.NET также поддерживает пользовательскую реализацию сегмента:
ZhConverter.ZhSegment.Segment = input =>
{
// input — это строка, а output — IEnumerable<string>
return new List<string>();
};
Вызовите ResetSegment()
, чтобы повторно использовать сегментацию jieba.NET и сбросить JiebaSegmenter
.
BYVoid/OpenCC предоставляет словари.
anderscui/jieba.NET обеспечивает реализацию сегментации.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )