긴 문자열로 변환 / 캐스트하는 방법?


290

방금 날짜를 선택할 수있는 샘플 BB 앱을 만들었습니다.

DateField curDateFld = new DateField("Choose Date: ",
  System.currentTimeMillis(), DateField.DATE | DateField.FIELD_LEFT);

날짜를 선택한 후 데이터베이스의 어딘가에 날짜 값을 쉽게 저장할 수 있도록 긴 값을 문자열로 변환해야합니다. Java 및 Blackberry 개발에 익숙하지 않습니다.

long date = curDateFld.getDate();

이 긴 값을 문자열로 어떻게 변환해야합니까? 또한 String에서 long으로 다시 변환하고 싶습니다. 내가 사용할 수 있다고 생각 long l = Long.parseLong("myStr");합니까?

답변:


393

String 클래스에 대한 참조 문서를 참조 하십시오 .String s = String.valueOf(date);

Long이 null 일 수 있고 4 문자 "null"문자열을 원하지 않으면 Objects.toString다음과 같이 사용할 수 있습니다 .String s = Objects.toString(date, null);


편집하다:

당신은 그것을 사용하여 반전 Long l = Long.valueOf(s);하지만이 방향으로 잡을 필요가 있습니다.NumberFormatException


13
Long.valueOf(String)는 을 반환합니다 Long. 원하는 경우을 long사용하십시오 Long.parseLong(String).
Daniel Hepper

1
이 방법의 차이점은 무엇입니까, 또는 다음과 같이 연결하십시오 : ( ""+ longAttr)?
Marcelo Assis

4
@MarceloAssis .. concat은 약 2 배 느립니다. 응용 프로그램에서 성능이 중요한 경우.
Hari Menon

java.util.Objects
훌륭

1
Java 7 이전에는 Commons Lang을 사용할 수도 있습니다 ObjectUtils.toString(Object,String). -> commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/... , java.lang.String의)
기욤 Husta

207
String strLong = Long.toString(longNumber);

간단하고 잘 작동합니다 :-)


외부 일반적인 형식 변환의 경우 Date상황이 변환 할 수있는 권장 연습 LongString.
KomodoDave

3
기본 유형 (긴)에서는 잘 작동하지만 오토 박싱에서도 오브젝트 유형 (긴)으로 NPE를 던질 수 있습니다.
기 illa 후 스타

93

Long.toString()

다음이 작동합니다.

long myLong = 1234567890123L;
String myString = Long.toString(myLong);

1
와 차이가 String.valueOf(myLong)있습니까?
membersound

2
@membersound 그들은 동일합니다. 기본적으로 String.valueOf (long)은 Long.toString ()을 호출합니다.
Nero

3
한 String.valueOf ()가 null의 경우 "널 (null)"를 반환하기 때문에 Long.toString ()는 NullPointerException이 발생합니다 동안이 같은 전화를하지 않을 @Nero
Dhiresh 자이나교

21

매우 간단합니다. long을 문자열로 연결하십시오.

long date = curDateFld.getDate(); 
String str = ""+date;

10

1.

long date = curDateFld.getDate();
//convert long to string
String str = String.valueOf(date);

//convert string to long
date = Long.valueOf(str);

2.

 //convert long to string just concat long with empty string
 String str = ""+date;
//convert string to long

date = Long.valueOf(str);

3
String logStringVal= date+"";

long을 문자열 객체로 변환하고 문자열로 변환하기위한 멋진 바로 가기를 사용할 수 있지만 사용하는 String.valueOf(date);것이 좋습니다.


나는 String.valueOf선호하는 접근법 이라고 생각 했지만 그냥 전화하는 Long.toString것이 더 간단한 방법이라는 것을 알았 습니다.
gMale

2
String longString = new String(""+long);

또는

String longString = new Long(datelong).toString();

솔루션이 작동해야하는 이유에 대한 설명을 추가하는 것이 Stack Overflow에 대한 모범 사례입니다. 자세한 내용은 답변 방법을 참조하십시오 .
Fabian Schultz

1
이것은 질문에 대한 답변을 제공하지 않습니다. 저자에게 비평을하거나 설명을 요청하려면 게시물 아래에 의견을 남겨주십시오. - 검토에서
Krupal Shah

2
@KrupalShah 코드 전용 답변은 좋지 않지만 여전히 답변입니다. LQPRQ에 대한이 게시물을 추천합니다. 잘못하고 있습니다.
저품질
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.