C ++에서 Windows-1252 문자 값을 얻는 방법은 무엇입니까?

LA 라비 다

null과 같은 모든 종류의 제어 문자가있는 이상한 입력 파일이 있습니다. 이 Windows-1252로 인코딩 된 텍스트 파일에서 모든 제어 문자를 제거하고 싶지만 이렇게하면 :

std::string test="tést";
for (int i=0;i<test.length();i++)
{
     if (test[i]<32) test[i]=32; // change all control characters into spaces
}

é도 공백으로 변경됩니다.

따라서 Windows-1252로 인코딩 된 다음과 같은 문자열이있는 경우 :

std::string test="tést";

16 진수 값은 다음과 같습니다.

t  é  s  t
74 E9 73 74

참조 https://en.wikipedia.org/wiki/ASCIIhttps://en.wikipedia.org/wiki/Windows-1252

test [0]은 십진수 116 (= 0x74)과 같지만 é / 0xE9를 사용하면 test [1]은 십진수 값 233과 같지 않습니다.

그렇다면 어떻게 그것을 올바르게 인식 할 수 있습니까?

Adrian Mayor

32는 부호있는 정수이며, 부호있는 정수와 비교하는 char것은 부호있는 것처럼 컴파일러에 의해 수행됩니다. E9 (-23) <32 true를 반환합니다.

부호의 리터럴 사용 32하고, 32u비교하게하는 부호 값에서 수행 될 : E9 (233) <32 false를 반환한다.

바꾸기 :

if (test[i]<32) test[i]=32;

으로:

if (test[i]<32u) test[i]=32u;

그리고 예상 된 결과를 얻어야합니다.

여기에서 테스트하십시오 : https://onlinegdb.com/BJ8tj0kbd

참고 : char다음 코드로 서명 되었는지 확인할 수 있습니다 .

#include <limits>
...
std::cout << std::numeric_limits<char>::is_signed << std::endl;

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

문자열 C ++에서 문자 값을 얻는 방법은 무엇입니까?

분류에서Dev

iOS를 사용하여 문자열을 "windows-1252"로 인코딩하는 방법은 무엇입니까?

분류에서Dev

C #의 JSON 문자열에서 일부 값을 얻는 방법은 무엇입니까?

분류에서Dev

C ++, 문자열에서 올바른 이중 값을 얻는 방법은 무엇입니까?

분류에서Dev

HTML 문자열에서 값을 얻는 방법은 무엇입니까?

분류에서Dev

Rails 문자열에서 특정 값을 얻는 방법은 무엇입니까?

분류에서Dev

문자열 내에서 datetime 값을 얻는 방법은 무엇입니까?

분류에서Dev

문자열에서 특정 값을 얻는 방법은 무엇입니까?

분류에서Dev

Windows 명령 줄에서 숫자 문자열에서 값을 빼는 방법은 무엇입니까?

분류에서Dev

C #의 System.Windows.Input.Key에서 VirtualKeyCode 값을 얻는 방법은 무엇입니까?

분류에서Dev

C #에서 쉼표를 사용하여 사용자로부터 값을 얻는 방법은 무엇입니까?

분류에서Dev

Objective-C의 문자열 배열에서 가장 큰 숫자 값을 찾는 방법은 무엇입니까?

분류에서Dev

입력 유형 = 숫자에서 값을 얻는 방법은 무엇입니까?

분류에서Dev

C #에서 특수 문자로 XML을 읽는 방법은 무엇입니까?

분류에서Dev

JSON 문자열로 형식이 지정된 문자열에서 값을 얻는 방법은 무엇입니까?

분류에서Dev

JSON 문자열로 형식이 지정된 문자열에서 값을 얻는 방법은 무엇입니까?

분류에서Dev

Java의 값을 기반으로 문자열에서 수직 문자를 얻는 방법은 무엇입니까?

분류에서Dev

jquery의 문자열에서 잘못된 문자의 모든 값을 얻는 방법은 무엇입니까?

분류에서Dev

ASCII 값에서 문자를 얻는 방법은 무엇입니까?

분류에서Dev

Windows에서 C ++로 모든 비디오에서 스냅 샷을 얻는 쉬운 방법은 무엇입니까?

분류에서Dev

C의 파일에서 값을 얻는 방법은 무엇입니까?

분류에서Dev

C에서 char * 아래에 저장된 멀티 바이트 문자의 유니 코드 값을 얻는 방법은 무엇입니까?

분류에서Dev

SQL IN 문에서 문자열의 각 항목에 대한 최소값을 얻는 방법은 무엇입니까?

분류에서Dev

SQL IN 문에서 문자열의 각 항목에 대한 최소값을 얻는 방법은 무엇입니까?

분류에서Dev

C ++의 문자열 함수에서 값을 반환하지 않는 방법은 무엇입니까?

분류에서Dev

C #의 데이터 테이블에서 문자열 값을 반환하는 방법은 무엇입니까?

분류에서Dev

C #에서 문자열을 동적 값으로 바꾸는 방법은 무엇입니까?

분류에서Dev

배열 또는 문자열에서 숫자 값을 얻는 방법은 무엇입니까?

분류에서Dev

문자열 유형의 키 값 쌍에서 값을 얻는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    문자열 C ++에서 문자 값을 얻는 방법은 무엇입니까?

  2. 2

    iOS를 사용하여 문자열을 "windows-1252"로 인코딩하는 방법은 무엇입니까?

  3. 3

    C #의 JSON 문자열에서 일부 값을 얻는 방법은 무엇입니까?

  4. 4

    C ++, 문자열에서 올바른 이중 값을 얻는 방법은 무엇입니까?

  5. 5

    HTML 문자열에서 값을 얻는 방법은 무엇입니까?

  6. 6

    Rails 문자열에서 특정 값을 얻는 방법은 무엇입니까?

  7. 7

    문자열 내에서 datetime 값을 얻는 방법은 무엇입니까?

  8. 8

    문자열에서 특정 값을 얻는 방법은 무엇입니까?

  9. 9

    Windows 명령 줄에서 숫자 문자열에서 값을 빼는 방법은 무엇입니까?

  10. 10

    C #의 System.Windows.Input.Key에서 VirtualKeyCode 값을 얻는 방법은 무엇입니까?

  11. 11

    C #에서 쉼표를 사용하여 사용자로부터 값을 얻는 방법은 무엇입니까?

  12. 12

    Objective-C의 문자열 배열에서 가장 큰 숫자 값을 찾는 방법은 무엇입니까?

  13. 13

    입력 유형 = 숫자에서 값을 얻는 방법은 무엇입니까?

  14. 14

    C #에서 특수 문자로 XML을 읽는 방법은 무엇입니까?

  15. 15

    JSON 문자열로 형식이 지정된 문자열에서 값을 얻는 방법은 무엇입니까?

  16. 16

    JSON 문자열로 형식이 지정된 문자열에서 값을 얻는 방법은 무엇입니까?

  17. 17

    Java의 값을 기반으로 문자열에서 수직 문자를 얻는 방법은 무엇입니까?

  18. 18

    jquery의 문자열에서 잘못된 문자의 모든 값을 얻는 방법은 무엇입니까?

  19. 19

    ASCII 값에서 문자를 얻는 방법은 무엇입니까?

  20. 20

    Windows에서 C ++로 모든 비디오에서 스냅 샷을 얻는 쉬운 방법은 무엇입니까?

  21. 21

    C의 파일에서 값을 얻는 방법은 무엇입니까?

  22. 22

    C에서 char * 아래에 저장된 멀티 바이트 문자의 유니 코드 값을 얻는 방법은 무엇입니까?

  23. 23

    SQL IN 문에서 문자열의 각 항목에 대한 최소값을 얻는 방법은 무엇입니까?

  24. 24

    SQL IN 문에서 문자열의 각 항목에 대한 최소값을 얻는 방법은 무엇입니까?

  25. 25

    C ++의 문자열 함수에서 값을 반환하지 않는 방법은 무엇입니까?

  26. 26

    C #의 데이터 테이블에서 문자열 값을 반환하는 방법은 무엇입니까?

  27. 27

    C #에서 문자열을 동적 값으로 바꾸는 방법은 무엇입니까?

  28. 28

    배열 또는 문자열에서 숫자 값을 얻는 방법은 무엇입니까?

  29. 29

    문자열 유형의 키 값 쌍에서 값을 얻는 방법은 무엇입니까?

뜨겁다태그

보관