HTML 문자 엔터티로 인코딩 된 전자 메일 주소가 있습니다. .NET에 일반 문자열로 변환 할 수있는 것이 있습니까?
답변
당신이 사용할 수있는 HttpUtility.HtmlDecode
.NET 4.0 이상을 사용 WebUtility.HtmlDecode
하는 경우 System.Net
네임 스페이스 에서 사용할 수 있으므로 추가 어셈블리 참조가 필요없는을 사용할 수도 있습니다 .
답변
.Net 4.0에서 :
System.Net.WebUtility.HtmlDecode()
C # 프로젝트를 위해 어셈블리를 포함 할 필요가 없습니다.
답변
@CQ가 말했듯이 HttpUtility.HtmlDecode 를 사용해야 하지만 기본적으로 ASP 이외의 .NET 프로젝트에서는 사용할 수 없습니다.
비 ASP .NET 응용 프로그램의 경우에 참조를 추가해야합니다 System.Web.dll
. 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 “참조 추가”를 선택한 다음 목록을 찾아보십시오 System.Web.dll
.
참조가 추가되었으므로 완전한 이름을 사용하여 메소드에 액세스 System.Web.HttpUtility.HtmlDecode
하거나 using
명령문을 삽입하여 System.Web
작업을보다 쉽게 수행 할 수 있어야합니다 .
답변
서버 컨텍스트가없는 경우 (예 : 오프라인으로 실행) HttpUtility 를 사용할 수 있습니다 . HtmlDecode .
답변
Server.HtmlDecode
HTML 엔터티를 디코딩하는 데 사용 합니다. HTML 을 이스케이프 하려면 (예 : <
및 >
문자를 사용자에게 표시하려면 )을 사용하십시오 Server.HtmlEncode
.
답변
HTML을 디코딩하려면 아래 코드를 살펴보십시오.
string s = "Svendborg Værft A/S";
string a = HttpUtility.HtmlDecode(s);
Response.Write(a);
출력은 같다
Svendborg Værft A/S
답변
나처럼 HtmlAgilityPack을 사용하는 경우을 사용해야한다고 언급 할 가치가 있습니다 HtmlAgilityPack.HtmlEntity.DeEntitize()
. a를 가져와 a string
를 반환합니다 string
.