java.net.urlencoder.encode (string)가 더 이상 사용되지 않습니다. 대신 무엇을 사용해야합니까?

StackOverflow https://stackoverflow.com/questions/213506

문제

사용하면 다음 경고를받습니다 java.net.URLEncoder.encode:

warning: [deprecation] encode(java.lang.String)
         in java.net.URLEncoder has been deprecated

대신 무엇을 사용해야합니까?

도움이 되었습니까?

해결책

다른 사람을 사용하십시오 encode 방법 urlencoder:

URLEncoder.encode(String, String)

첫 번째 매개 변수는 인코딩 할 텍스트입니다. 두 번째는 사용하기 위해 인코딩하는 문자의 이름입니다 (예 : UTF-8). 예를 들어:

System.out.println(
  URLEncoder.encode(
    "urlParameterString",
    java.nio.charset.StandardCharsets.UTF_8.toString()
  )
);

다른 팁

당신은 사용해야합니다 :

URLEncoder.encode("NAME", "UTF-8");

수업을 사용하십시오 urlencoder:

URLEncoder.encode(String s, String enc)

어디에 :

에스 - 번역 할 문자열.

enc - 지원 된 이름 캐릭터 인코딩.

표준 숯 :

미국-ASCII 7 비트 ASCII, 일명 ISO646-US, 일명 유니 코드 문자 세트의 기본 라틴 블록 세트 ISO-8859-1 ISO 라틴 알파벳 No. 1, 일명 ISO-Latin-1

UTF-8 8 비트 UCS 변환 형식

UTF-16BE 16 비트 UCS 변환 형식, 빅 엔디 언트 바이트 순서

UTF-16LE 16 비트 UCS 변환 형식, 리틀 엔디언 바이트 순서

UTF-16 16 비트 UCS 변환 형식, 옵션 바이트 주문 마크로 식별 된 바이트 순서

예시:

import java.net.URLEncoder;

String stringEncoded = URLEncoder.encode(
    "This text must be encoded! aeiou áéíóú ñ, peace!", "UTF-8");

첫 번째 매개 변수는 인코딩 할 문자열입니다. 두 번째는 사용하기 위해 인코딩하는 문자의 이름입니다 (예 : UTF-8).

다른 응답에 대한 추가 참조로 사용하는 대신 "UTF-8" 당신이 사용할 수있는:

HTTP.UTF_8

org.apache.http.protocol 라이브러리의 일부로 Java 4 이후에 포함되어 있으며 Android API 1 이후에도 포함됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top