“\ n”과 Environment.NewLine의 차이점
.Net과 관련하여 둘 사이의 차이점은 무엇입니까?
플랫폼에 따라 다릅니다. Windows에서는 실제로 "\ r \ n"입니다.
MSDN에서 :
비 Unix 플랫폼의 경우 "\ r \ n"을 포함하는 문자열 또는 Unix 플랫폼의 경우 "\ n"을 포함하는 문자열
Environment.NewLine
소스 코드에서 정확한 구현 :
.NET 4.6.1의 구현 :
/*===================================NewLine====================================
**Action: A property which returns the appropriate newline string for the given
** platform.
**Returns: \r\n on Win32.
**Arguments: None.
**Exceptions: None.
==============================================================================*/
public static String NewLine {
get {
Contract.Ensures(Contract.Result<String>() != null);
return "\r\n";
}
}
.NET Core의 구현 :
/*===================================NewLine====================================
**Action: A property which returns the appropriate newline string for the
** given platform.
**Returns: \r\n on Win32.
**Arguments: None.
**Exceptions: None.
==============================================================================*/
public static String NewLine {
get {
Contract.Ensures(Contract.Result() != null);
#if !PLATFORM_UNIX
return "\r\n";
#else
return "\n";
#endif // !PLATFORM_UNIX
}
}
소스 ( System.Private.CoreLib
)
public static string NewLine => "\r\n";
소스 ( System.Runtime.Extensions
)
다른 사람들이 언급했듯이 Environment.NewLine
새 줄을 시작하기위한 플랫폼 별 문자열을 반환합니다.
"\r\n"
Windows 용 (\ u000D \ u000A)"\n"
유닉스 용 (\ u000A)"\r"
Mac 용 (\ u000D) (구현 된 경우)
콘솔에 쓸 때 Environment.NewLine이 반드시 필요한 것은 아닙니다. "\n"
필요한 경우 콘솔 스트림은 적절한 개행 순서로 변환 됩니다.
Environment.NewLine
코드가 실행되는 해당 플랫폼의 개행 문자를 반환합니다
Mono 프레임 워크 에서 리눅스로 코드를 배포 할 때 매우 유용합니다.
로부터 문서 ...
비 Unix 플랫폼의 경우 "\ r \ n"을 포함하는 문자열 또는 Unix 플랫폼의 경우 "\ n"을 포함하는 문자열
Environment.NewLine은 Windows에서 실행될 때 "\ r \ n"을 제공합니다. Unix 기반 환경을위한 문자열을 생성하는 경우 "\ r"을 원하지 않습니다.
"\ r \ n"으로 구분 된 여러 줄 메시지를 표시하려고하면 문제가 발생할 수 있습니다.
It is always a good practice to do things in a standard way, and use Environment.NewLine
참고URL : https://stackoverflow.com/questions/1015766/difference-between-n-and-environment-newline
'development' 카테고리의 다른 글
Jenkins에서 작업을 어떻게 복제합니까? (0) | 2020.05.12 |
---|---|
객체에 요소 추가 (0) | 2020.05.12 |
Bash의 파일 경로 인수에서 마지막 dirname / filename 가져 오기 (0) | 2020.05.12 |
find 명령으로 리턴 된 파일 목록을 cat로 파이프하여 모든 파일을 보는 방법 (0) | 2020.05.12 |
줄 바꿈을 포함한 모든 문자와 일치하는 정규식 (0) | 2020.05.12 |