2014-10-29 4 views
0

동적 인 방법으로 시간 시계의 날짜와 시간을 업데이트해야합니다. 변수 char (char 배열이 아님)에서 허용하는 형식으로 문자열을 변환 할 수 없습니다.문자열을 16 진수로 변환하십시오.

다른 방법이 있습니까?

이렇게 작동합니다! 내가 시도

public String getYear() { 
    return year; 
} 

//gets... 

char year = getYear(); 
char month = getMont(); 
char day = getDay(); 
char hour = getHour(); 
char min = getMin(); 
char sec = getSec(); 

byte[] date_hour = new byte[]{(byte) 0xFE, (byte) 0x82, (byte) 0x71, (byte) 0x00, (byte) 0x0B, 
        (byte) 0x01, (byte) 0x00, (byte) 0x07, 
        (byte) year, (byte) month, (byte) day, (byte) hour, (byte) min, (byte) sec, 
        (byte) 0x0A, (byte) 0x17, (byte) 0x0E, (byte) 0x0A, (byte) 0x17}; 

out.write(date_hour); 

: 내 나쁜 영어 ... 감사에 대한 Hex-encoded String to Byte Array How to convert/parse from String to char in java?

죄송하지만 이렇게 동적이지 ...

char year = 0x0E; 
char month = 0x0A; 
char day = 0x0A; 
char hour = 0x0A; 
char min = 0x0A; 
char sec = 0x0A; 

byte[] date_hour = new byte[]{(byte) 0xFE, (byte) 0x82, (byte) 0x71, (byte) 0x00, (byte) 0x0B, 
        (byte) 0x01, (byte) 0x00, (byte) 0x07, 
        (byte) year, (byte) month, (byte) day, (byte) hour, (byte) min, (byte) sec, 
        (byte) 0x0A, (byte) 0x17, (byte) 0x0E, (byte) 0x0A, (byte) 0x17}; 

out.write(date_hour); 

내가 좋아하는 뭔가를 원했다! 당신은 숯불에 문자열을 변환 할 경우

+0

필요한 char 값은 문자열의 문자와 관련이 없습니다. 오히려, 그것들은'char' (이것은 단순히 작은 정수 임)에 저장된 숫자 값입니다. (실제로는'char'을 사용하지 말고'byte '로 선언해야합니다.) –

+0

예, 시간 값은 적절한 데이터 유형을 사용하여 시작하지 않습니다. Joda 시간에는 좋은 수업이 있고 Java8에는 알맞은 날짜/시간 패키지가 있습니다. – BarrySW19

+0

나는 문제가 발생하지 않습니다 ... 당신은 정말로 무엇을하려고합니까? 'out.write' 란 무엇입니까? 왜 바이트 배열을 가지고 있습니까? – bobbel

답변

0

, 당신은이 작업을 수행 할 수 있습니다

한다고 가정 STR 문자열의 변수 이름입니다.

char ch = str.toCharArray()[0]; 

또는, 당신은 사용할 수 있습니다

char ch = str.charAt(0); 

이 두 문자열 STR의 (문자열에 문자 진정 경우 유일한 문자됩니다) 첫 번째 문자를 저장합니다 캐릭터 문자 ch.

관련 문제