Здравствуйте, mikkri, Вы писали:
M>Здравствуйте, Аноним, Вы писали:
А>>Собственно сабж.
M>Какого символа? В какой кодировке? M>Кстати, не пробовал JavaDoc'и для класса String смотреть? Или для класса Character?
Для начала просто хорошая книжка может помочь...
Предвидя саму проблему, могу предположить, что уважаемого Анонима устроит ответ вида:
String str = "My string";
for (int i = 0; i < str.length(); i++) {
System.out.println((int) str.charAt(i));
}
ICQ [168117153]
Re[3]: Как вернуть код символа?
От:
Аноним
Дата:
04.03.04 10:33
Оценка:
Здравствуйте, DrZubr, Вы писали:
DZ>Здравствуйте, mikkri, Вы писали:
M>>Здравствуйте, Аноним, Вы писали:
А>>>Собственно сабж.
M>>Какого символа? В какой кодировке? M>>Кстати, не пробовал JavaDoc'и для класса String смотреть? Или для класса Character?
DZ>Для начала просто хорошая книжка может помочь...
DZ>Предвидя саму проблему, могу предположить, что уважаемого Анонима устроит ответ вида:
DZ>
DZ>String str = "My string";
DZ>for (int i = 0; i < str.length(); i++) {
DZ> System.out.println((int) str.charAt(i));
DZ>}
DZ>
Функция str.charAt(i)) возвращает символ из строки str под номером i, а мне нужен именно код символа.
Например int i = UnknowFunction('1'); В итоге переменной i будет присвоено значение 49(код символа 1).
В С++ все намного проще: int i = (int)'1';
Я не Ламер, я тока учусь
Re[2]: Как вернуть код символа?
От:
Аноним
Дата:
04.03.04 10:35
Оценка:
Здравствуйте, mikkri, Вы писали:
M>Здравствуйте, Аноним, Вы писали:
А>>Собственно сабж.
M>Какого символа? В какой кодировке? M>Кстати, не пробовал JavaDoc'и для класса String смотреть? Или для класса Character?
Обычного символа в обычной ANSI кодировке. Смотрел классы String и Character, но там я ничего не нашел?
Здравствуйте, Аноним, Вы писали:
А>Функция str.charAt(i)) возвращает символ из строки str под номером i, а мне нужен именно код символа. А>Например int i = UnknowFunction('1'); В итоге переменной i будет присвоено значение 49(код символа 1).
А>В С++ все намного проще: int i = (int)'1';
Ага. Вот только ты не учел, что символ будет в кодировке Unicode16. Собственно, что ты хочешь сделать???
К примеру, есть у меня китайский иероглиф. Нафиг тебе его код?
А>Я не Ламер, я тока учусь
Похоже, ты успешно учишься быть ламером. По крайней мере советы ты игнорируешь.
Смотрим джавадоки:
Character.getNumericValue
public static int getNumericValue(char ch)Returns the Unicode numeric value of the character as a nonnegative integer. If the character does not have a numeric value, then -1 is returned. If the character has a numeric value that cannot be represented as a nonnegative integer (for example, a fractional value), then -2 is returned.
Parameters:
ch — the character to be converted.
Returns:
the numeric value of the character, as a nonnegative int value; -2 if the character has a numeric value that is not a nonnegative integer; -1 if the character has no numeric value.
Since:
JDK1.1
сообщил/сообщила в новостях следующее: news:559442@news.rsdn.ru... > Здравствуйте, mikkri, Вы писали: > > M>Здравствуйте, Аноним, Вы писали: > > А>>Собственно сабж. > > M>Какого символа? В какой кодировке? > M>Кстати, не пробовал JavaDoc'и для класса String смотреть? Или для класса Character? > > Обычного символа в обычной ANSI кодировке. Смотрел классы String и Character, но там я ничего не нашел?
String myString = "Твоя строка представленная в Юникоде (2 байта на символ)";
String needEncoding = "Cp866"; //подставь то что нужно
byte[]bytes = null;
try {
bytes = myString.getBytes(needEncoding);
} catch (UnsupportedEncodingException e) {
bytes = myString.getBytes(); //uses default encoding
}
for (int i = 0; i < bytes.lenght; i++) {
System.out.println(bytes[i]);
}
Здравствуйте, Аноним, Вы писали:
А>Функция str.charAt(i)) возвращает символ из строки str под номером i, а мне нужен именно код символа. А>Например int i = UnknowFunction('1'); В итоге переменной i будет присвоено значение 49(код символа 1).
А>В С++ все намного проще: int i = (int)'1';
А>Я не Ламер, я тока учусь
Дык а я тебе что написал??? Ты хоть запускал тот пример???
public class Example {
public static int getCharCode(char ch) {
return (int) ch;
}
public static void main(String[] args) {
System.out.println(getCharCode('1'));
}
}
Запусти это и получишь свое 49
В твоем тривиальном случае это то что надо.