[텍스트 파일 쓰기]

StreamWriter writer;
writer = File.CreateText(Environment.CurrentDirectory + "\\" + FileName + ".txt");

       for(int = 0; i<10; i++) 
       {
            writer.WriteLine(i.ToString());
       }
       
writer.Close();

 

[텍스트 파일 읽기]

StreamReader file = new StreamReader(path);
try
{
        while ((line = file.ReadLine()) != null)
		{
               Console.WriteLine(line);
        }
 }
catch (Exception ex) 
{
        // Error.
}

비쥬얼 스튜디오의 C#에서 카카오 i API를 사용하기 위해서는 일단 제일먼저

 

API키를 발급 받아야 한다.

 

[ref link]

developers.kakao.com/docs/latest/ko/translate/common

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

 

키를 발급받았다면, 아래 코드를 입력해준다.

 

[Program.cs]

using System;
using System.IO;
using System.Net;
using System.Text;

namespace Kakao_Trans
{
    class Program
    {
        static void Main(string[] args)
        {
            Kakao_Trans();
        }

        private static void Kakao_Trans() 
        {
            try
            {
                string type = "src_lang=en&target_lang=kr"; // 요청하고자 하는 번역 타입
                string site = "https://kapi.kakao.com/v1/translation/translate?" + type + "&query=";
                string Original_string = "Where are you from?"; // 번역하고 싶은 원본 데이터

                string query = string.Format("{0}{1}", site, Original_string); // 최종적으로 요청하는 번역 쿼리

                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(query);

                string rkey = "API KEY 입력"; // API 키

                string header = "KakaoAK " + rkey;

                request.Headers.Add("Authorization", header);
                request.ContentType = "application/x-www-form-urlencoded";

                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                string status = response.StatusCode.ToString();

                if (status == "OK")
                {
                    Stream stream = response.GetResponseStream();

                    StreamReader reader = new StreamReader(stream, Encoding.UTF8);

                    String text = reader.ReadToEnd();

                    stream.Close();
                    response.Close();
                    reader.Close();

                    int start = text.IndexOf("[\"") + 2;
                    int end = text.IndexOf("\"]", start);

                    Console.WriteLine(text.Substring(start, end - start));
                }
                else
                {
                    // 오류발생
                }
            }
            catch (Exception ex)
            {
                //api에서 문제가 생겨도 여기서 오류가 발생한다.
                //오류 내용을 확인해서 로그를 남겨야 할듯
            }
        }
    }
}

 

참고로!

string rkey = "API KEY 입력"; // API 키

이 코드 부분에 발급받았던 키를 입력해 줘야된다.

 

 

[실행 결과]

비쥬얼 스튜디오의 C#에서 파파고 API를 사용하기 위해서는 일단 제일먼저

 

API키를 발급 받아야 한다.

 

[ref link]

developers.naver.com/products/nmt/

 

Papago 소개

Neural Machine Translation NMT는 Neural Machine Translation(인공신경망 기반 기계번역)의 약어입니다. 파파고의 NMT 기술은 입력 문장을 문장벡터로 변환하는 신경망(encoder)과 문장벡터에서 번역하는 언어의 �

developers.naver.com

 

위에서 발급 받으면 된다.

 

그리면 Client ID 와, Client Secret 코드를 발급받게 된다.

 

 

[Program.cs]

using Newtonsoft.Json.Linq;
using System;
using System.IO;
using System.Net;
using System.Text;

namespace Papago_Trans
{
    class Program
    {
        static void Main(string[] args)
        {
            Papago_Trans();
        }

        private static void Papago_Trans() 
        {
            try
            {
                // 요청 url
                string sUrl = "https://openapi.naver.com/v1/papago/n2mt";
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(sUrl);
                // 헤더 추가하기 (파파고 NMT API 가이드에서 -h 부분이 헤더이다)
                request.Headers.Add("X-Naver-Client-Id", "API 아이디 코드");
                request.Headers.Add("X-Naver-Client-Secret", "API 시크릿 코드");
                request.Method = "POST";

                // 파라미터에 값 넣기 (파파고 NMT API가이드에서 -d부분이 파라미터)
                //string sParam = string.Format("source=auto&target=en&text="+txtSendText.Text);

                string Original_string = "Where are you from?"; // 번역하고싶은 데이터

                // 파라미터를 char Set에 맞게 변경
                byte[] bytearry = Encoding.UTF8.GetBytes("source=en&target=ko&text=" + Original_string);

                request.ContentType = "application/x-www-form-urlencoded";

                // 요청 데이터 길이
                request.ContentLength = bytearry.Length;

                Stream st = request.GetRequestStream();
                st.Write(bytearry, 0, bytearry.Length);
                st.Close();

                // 응답 데이터 가져오기 (출력포맷)
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream stream = response.GetResponseStream();
                StreamReader reader = new StreamReader(stream, Encoding.UTF8);
                string text = reader.ReadToEnd();

                stream.Close();
                response.Close();
                reader.Close();

                JObject jObject = JObject.Parse(text);
                Console.WriteLine(jObject["message"]["result"]["translatedText"].ToString()); // 결과 출력
            }
            catch (Exception ex)
            {
                //api에서 문제가 생겨도 여기서 오류가 발생한다.
                //오류 내용을 확인해서 로그를 남겨야 할듯
            }
        }
    }
}

 

[참고]

                // 헤더 추가하기 (파파고 NMT API 가이드에서 -h 부분이 헤더이다)
                request.Headers.Add("X-Naver-Client-Id", "API 아이디 코드");
                request.Headers.Add("X-Naver-Client-Secret", "API 시크릿 코드");

여기 부분에 있는 API 아이디 코드와, 시크릿 코드는 본인이 발급받은 내용을 적어주면

정상적으로 작동할 것이다!

 

 

[실행 결과]

구글 번역기 API를 사용하기 위해서는 해당 API 키를 먼저 발급받아야 한다.

 

[ref link]

console.developers.google.com/

 

Google Cloud Platform

하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요.

accounts.google.com

 

키를 발급받았다면, 비쥬얼스튜디오에서 필요한 NuGet을 설치한다.

 

솔루션용 NuGet 패키지 설치

 

그리고 나서 솔루션 창이 나오면

 

Google.Apis.Translate.v2

Google.Apis.Translate.v2 를 설치해준다.

 

마지막으로

 

해당 코드를 입력한다.

 

[Program.cs]

using Google.Apis.Services;
using Google.Apis.Translate.v2;
using Google.Apis.Translate.v2.Data;
using System;

namespace Google_Trans
{
    class Program
    {
        static void Main(string[] args)
        {
            Google_Trans();
        }

        private static void Google_Trans() 
        {
            TranslateService service = new TranslateService(new BaseClientService.Initializer()
            {
                ApiKey = "API KEY 입력", // 여기만 바꾸면 됨.
                ApplicationName = " "
            });

            string Original_string = "Where are you from?"; // 해당 글 번역 요청
            try
            {
                try
                {
                    //번역 요청
                    TranslationsListResponse response = service.Translations.List(Original_string, "ko").Execute();
                    //번역 결과
                    Console.WriteLine(response.Translations[0].TranslatedText);
                }
                catch (Exception ex)
                {
                    //api에서 문제가 생겨도 여기서 오류가 발생한다.
                    //오류 내용을 확인해서 로그를 남겨야 할듯
                }
            }
            catch (Exception ex)
            {
                //오류 내용을 확인해서 로그를 남겨야 할듯
            }
        }
    }
}

 

참고로 마지막에 

TranslationsListResponse response = service.Translations.List(Original_string, "ko").Execute();

여기서 Original_string 은 타입에 따라 자동으로 언어가 지정된다.

 

 

[실행 결과]

오늘도 어김없이 들어오자마자 코인 줍줍이 부터

 

54..

55..

56..

57

 

끝!!!

 

데일리 기프트 

그리고 오늘의 데일리 기프트는 에디셔널 큐브이다!!!

 

그래서 이것을 잡옵에 돌려줘야하는데..

 

내 템은 에디 잡옵 투성이다..

 

참고로 왜 토드를 안했을까 후회중

 

메린이 입니다.

 

응 맞아 메이플이 쉽게 줄리가 없지 ^^;

 

믹스 렌즈

그리고 이벤트때 받았던 믹스렌즈!!

 

이거 이벤토리에 있어서 알았다.

 

에디 아니였으면 기간 지나서 못쓸뻔..ㅎㅎ

 

무슨 차이인지 모르겠다.

 

이벤트 링 전용 명장의 큐브

오늘도 어김없이 다시 도전하는 이벤트링 유닉 도전!!!

 

SS급 마스터 쥬얼링

이번에는 제발 가주세여...

 

실패1

응 실패

 

실패2

 

응 그럴리가 없지

 

실패3

역시 ㅎㅎ..

 

이제 그냥 1시간 기다리고 황금마차 출첵하고 접종해야지 ㅠㅠ

 

'게임 > Maple Story' 카테고리의 다른 글

[메이플 일기] 2020. 09. 27  (0) 2020.09.27

보통 프로그램을 만들기 위해서는 visual studio 같은 개발 툴이 필요하다.

 

하지만, 별도의 툴 없이 간단한 코드를 테스트하고 결과를 확인할 수 있는 사이트가 있다.

 

[ref link]

repl.it/

 

The collaborative browser based IDE

Repl.it is a simple yet powerful online IDE, Editor, Compiler, Interpreter, and REPL. Code, compile, run, and host in 50+ programming languages: Clojure, Haskell, Kotlin, QBasic, Forth, LOLCODE, BrainF, Emoticon, Bloop, Unlambda, JavaScript, CoffeeScript,

repl.it

 

구글 계정이나, 깃허브 계정만 있으면 손 쉽게 할 수 있다!

 

실행결과

 

짠 이런식으로 :)

주로 MSsql을 이용해서 작업을 했는데,

 

SQLite를 이용하여 작업을 하게되는 일이 생겼다.

 

그래서 자주 사용하는 쿼리를 메모한다.

 

SELECT

SELECT * FROM Table;
SELECT * FROM Table LIMIT 10; // mssql로 치면 Top 같은건데 다른점은 sqlite같은 경우는 뒤에서 지정해줘야한다.

 

INSERT

INSERT INTO Table VALUES (Int, 'str1', 'str2'); // 특별히 변수를 지정해주고 싶으면 Table뒤에 (변수1, 변수2...) 이렇게

 

UPDATE

UPDATE Table SET colum1 = 'str1', colum2 = 'str2' WHERE key=value;

 

DELETE

DELETE FROM Table WHERE key=value;

mssql 쿼리를 처리하다보면

 

"&근처의 구문이 잘못되었습니다." 라는 오류를 흔히 볼 수 있다.

 

보통 sql server에서는 문자열 처리할 때 작은 따옴표를 사용하는데,

 

이럴때는 ' 이 부분 앞에 '' 이렇게 작은따옴표를 2개 붙여주면된다.

 

 

예를 들어, C# 기준으로 설명을 하자면

 

C#에서는 문자열을 바꿔주는 기능이 있다. String.Replace !!

 

 

따라서

 

string.Replace("'", "''");

 

이렇게하면 데이터를 유지하고 넣을 수 있다.

+ Recent posts