gpt4 book ai didi

java - 使用java的泰米尔语字符分割

转载 作者:行者123 更新时间:2023-11-30 10:38:50 26 4
gpt4 key购买 nike

在下面的编码中,我尝试读取具有特定长度的行并在另一个记事本上写入。这种编码适用于英文字符。但对于泰米尔语字母,如果我尝试计算......它算作:

(例如)தமிழ்

它算作 5..(即)“த”、“ம”、“ி”、“ழ”和“்”。但我想把它算作 3(i.e)"த"、"மி"和 "ழ்"

我想将此逻辑应用于文本文件中的多个单词....

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;

public class ii {

public static void main(String[] args) {
FileReader fr = null;
BufferedReader br =null;
FileWriter fw=null;
BufferedWriter bw=null;

String [] stringArray;
int counLine = 0;
int arrayLength ;
String s="";
String stringLine="";

try{
fr = new FileReader("F:\\New folder (2)\\N.txt");
fw=new FileWriter("F:\\New folder (2)\\o.txt");
br = new BufferedReader(fr);
bw=new BufferedWriter(fw);
while((s = br.readLine()) != null){
stringLine = stringLine + s;
stringLine = stringLine + " ";
counLine ++;
}
stringArray = stringLine.split(" ");
arrayLength = stringArray.length;
for (int i = 0; i < arrayLength; i++) {
int c = 1 ;
for (int j = i+1; j < arrayLength; j++) {
if(stringArray[i].equalsIgnoreCase(stringArray[j])){
c++;
for (int j2 = j; j2 < arrayLength; j2++)
{
}}
int k;
for(k=2;k==stringArray[i].length();i++)
{
bw.write(stringArray[i]);
bw.newLine();

}}} fr.close();
br.close();
bw.flush();
bw.close();
}catch (Exception e) {
e.printStackTrace();
}}}

最佳答案

一种方法是使用 BreakIterator 遍历字符,然后自己对它们进行计数。 (未经测试的代码)

int characterCount = 0;
BreakIterator iterator = BreakIterator.getCharacterInstance();
iterator.setText("தமிழ்");
int boundary = iterator.first();

while (boundary != BreakIterator.DONE) {
characterCount++;
boundary = iterator.next();
}

另见 http://docs.oracle.com/javase/tutorial/i18n/text/char.html

关于java - 使用java的泰米尔语字符分割,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39525292/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com