*네이버의파파고번역API를이용하여번역기를만들어보겠습니다.
*우선네이버의개발자센터에서번역API사용신청을한다음ClientID,Seret값을받아사용해야합니다.
✔ API 사용 신청
*네이버개발자센터에서내애플리케이션을아래와같이등록합니다.
-이름,사용API,환경추가를입력합니다.
*등록을완료하면ClientID,ClientSecret을확인합니다.
✔ C# 코딩
-호출Class소스입니다.
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
namespace mPost.Comp
{
public class cResult
{
public string srcLangType { get; set; }
public string tarLangType { get; set; }
public string translatedText { get; set; }
}
class cTrans
{
public cTrans()
{
}
public string ConvertData(string strIn)
{
cResult dtData = new cResult();
try
{
Dictionary<string, object> dData = JsonConvert.DeserializeObject<Dictionary<string, object>>(strIn);
Dictionary<string, object> dData1 = JsonConvert.DeserializeObject<Dictionary<string, object>>(dData["message"].ToString());
dtData = JsonConvert.DeserializeObject<cResult>(dData1["result"].ToString());
} catch (Exception ex)
{
}
return dtData.translatedText;
}
public string mTrans(string strIn)
{
string strOut = "";
string url = "https://openapi.naver.com/v1/papago/n2mt";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Headers.Add("X-Naver-Client-Id", "부여받은 ID");
request.Headers.Add("X-Naver-Client-Secret", "부여받은 비번");
request.Method = "POST";
// string query = "오늘 날씨는 어떻습니까?";
byte[] byteDataParams = Encoding.UTF8.GetBytes("source=ko&target=en&text=" + strIn);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteDataParams.Length;
Stream st = request.GetRequestStream();
st.Write(byteDataParams, 0, byteDataParams.Length);
st.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.UTF8);
strOut = reader.ReadToEnd();
stream.Close();
response.Close();
reader.Close();
// Console.WriteLine(text);
return ConvertData(strOut);
}
}
}
|
cs |
✔ 결과
*예제와같이한국어를영어로번역하였습니다.
-가능한언어는영어,일본어,중국어,베트남어,인도네시아어,태국어,독일어,러시아어,스페인어,등가능합니다.
'코딩 ( 프로그래밍 ) > C# 응용' 카테고리의 다른 글
Unicode 파일 쓰기와 읽기 함수 (0) | 2020.08.09 |
---|---|
문자열에 한글이 포함되어 있는지 확인하는 함수 (0) | 2020.08.09 |
[C#] 레지스트리에 값 저장 및 읽기 (0) | 2020.07.30 |