보통은 CP850 인코딩 방식을 사용하므로 영어가 아닌 언어를 사용할때는 그에맞는 방식을 추가해주어야 한다 함
따라서 영어가 아닌 언어를 쓸때는 다른 코드페이지로 변경해주어야한다
※코드페이지 란
코드 페이지(code page)는 특정한 문자 인코딩 테이블을 위해 쓰이는 전통적인 IBM 용어이다. 문자 인코딩 테이블 부터 255까지의 정수를 표현하는 단일 옥텟(octet, 바이트)이라고 불리는 일련의 비트들이 특정한 문자와 결합하여 표화(mapping)한 것이다. IBM과 마이크로소프트는 코드 페이지를 문자열 집합(charset)에 자주 할당한다.
using System.Drawing.Text; //InstalledFontCollection
using System.IO; //StreamWriter
using System.Windows;
private void getFont2_Click(object sender, RoutedEventArgs e)
{
getFontList();
}
public void getFontList()
{
string installedFont = "";
using (InstalledFontCollection col = new InstalledFontCollection())
{
foreach (System.Drawing.FontFamily fa in col.Families)
{
// 출력 형태 - 폰트 명 : [FontFamily: Name=HY얕은샘물M]
//installedFont += "폰트 명 : " + fa + "\n";
// 출력 형태 - 폰트 명 : HY얕은샘물M
installedFont += "폰트 명 : " + fa.Name + "\n";
}
}
// 폰트 목록을 저장할 폴더 위치
string docPath = @"D:\kay\";
// 위의 docPath에 저장될 폰트 리스트 파일 명 installedFont.txt
using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(docPath, "installedFont.txt")))
{
outputFile.WriteLine(installedFont);
}
}
그래도 파이썬처럼 cmd에서 바로 실행이 가능하니, C# 간단한 예제를 실행할때 사용하기 좋은듯하다
(대신 경로가 조금 길어서 그냥 비쥬얼 스튜디오 켜는게 정신건강에 이로울수있다)
dir /s %WINDIR%\CSC.EXE
위의 명령어를 cmd창에 입력해주면
기존에 설치한 닷넷 프레임워크 폴더 내에 있는 csc.exe 파일의 위치를 찾아준다
이 중에서 v4.0 버전이 제일 최신 버전의 .net framework 이므로
C:\Windows\Microsoft.NET\Framework64\v4.0.30319 폴더로 이동하여 csc.exe를 돌려주면 된다
//csc.exe 사용법
//컴파일 할 파일이 있는 폴더에서 아래의 명령어를 입력해준다
//'최신 버전의 csc.exe 파일이 있는 위치(폴더 명)\csc' + 컴파일할 파일 명
F:\c# example c:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc Program.cs
위의 컴파일 명령어를 수행하고 나면
기존 Program.cs 파일만 있었던 F:\c# example 폴더에 Program.exe 파일이 생성된것을 알 수 있다