본문 바로가기

전체 글

(55)
c# DataTable 데이터 이쁘게 출력하기 (콘솔) 사전지식 검색해도 맘에 드는 것이 없어서 직접 소스를 작성하였다. 준비물 .net6.0 이상의 버전 에디터는 vscode or vs2022을 추천. 실습 1. 메서드 작성. using System.Data; internal static class DataTableEX { const string No = " №"; public static void Print(this DataTable table, bool rowNum = false) => Print(table, null, rowNum); public static void Print(this DataTable table, int top, bool rowNum = false) => Print(table, top, null, rowNum); public sta..
c# 콘솔 폰트 확인 및 폰트(글꼴,크기) 변경 사전지식 및 계기 특수문자 또는 외국문자를 출력하다 보면 폰트에 따라서 깨지는 글자가 생긴다. 특히 콘솔에서는 대체 폰트가 없는 듯이 깨진다. 그리고 글꼴이 맘에 안들 수가 있다. 그럴 땐 콘솔 창 타이틀바에 마우스 오른쪽을 클릭하여 속성 창에서 변경이 가능한데, 이번에는 c#코드로 런타임 때 변경하는 방법을 알아본다. 준비물 .net6.0 이상의 버전 에디터는 vs2022을 추천(권장) 실습 1. ConsoleHelper.cs 파일을 작성한다. using System.Runtime.InteropServices; public static class ConsoleHelper { private const int FixedWidthTrueType = 54; private const int StandardOut..
c# 전각 or 반각 문자 전부 찾기 (콘솔) 사전지식 및 계기 전각, 반각에 따라서 아래의 링크의 내용처럼 콘솔에 맞게 포맷팅을 변경해줘야 하는 경우가 있다. 2021.12.30 - [C#/예제 코드] - c# DataTable 컬럼정보 이쁘게 출력하기 (콘솔) c# DataTable 컬럼정보 이쁘게 출력하기 (콘솔) 사전지식 DataTable의 칼럼 정보를 전체적으로 망라할 수 있는 소스를 뒤져봤지만, 전각 문자에 대한 지원이 미흡하다던가.. 대충 텍스트만 출력한다든가.. 맘에 드는 것이 없어서 직접 소스를 작 self-edu.tistory.com 반각 문자는 체계가 있을까 싶어 아스키코드나 일본어 가타카나 몇 개 정도로 상정하여 🔍검색하면, 영어로 하든지 한글로 하든지 제대로 된 정보를 찾기 힘들다. 그리고 중요한 점은 폰트에 따라서 반각과 전..
c# DataTable 컬럼정보 이쁘게 출력하기 (콘솔) 사전지식 DataTable의 칼럼 정보를 전체적으로 망라할 수 있는 소스를 뒤져봤지만, 전각 문자에 대한 지원이 미흡하다던가.. 대충 텍스트만 출력한다든가.. 맘에 드는 것이 없어서 직접 소스를 작성하였다. 준비물 .net6.0 이상의 버전 에디터는 vscode or vs2022을 추천. 실습 1. 메서드 작성. using System.Data; internal static class DataTableEX { public static void PrintColumns(this DataTable table) { DataColumn[] columns = table.Columns.Cast().ToArray(); if (columns.Length == 0) { Console.WriteLine("NO columns..
콘솔창 UTF 8 로 바꾸기 (win 10에서 4가지 방법) 1. 콘솔 창에서 Win+R cmd Enter 확인 명령어 -> chcp 바꾸기 명령어 -> chcp 65001 단점 : 켤 때마다 바꿔야 함 2. 소스 창에서 Console.OutputEncoding = System.Text.Encoding.UTF8; //.cs std::locale::global(std::locale("ko_KR.UTF-8")); //.cpp 단점? : vscode는 자체 출력 창이 있으므로 안 해줘도 기본적으로 잘 나온다. 3. 레지스트리에서 Win+R regedit Enter 단점: Visual studio 디버그 창까지는 변경되지는 않는다. 4. 제어판에서 단점: 재부팅을 요구하고 폰트가 이상해진다. (권장하지 않음)
c#으로 근본 없는 웹서버 개발기 15 : multipart/form-data 파일전송 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 multipart/form-data는 명칭에서 유추해볼 수 있듯이 여러 개의 파일이나 텍스트를 form에 쟁여서 전송이 필요할 때 사용하게 되는 Content-type이다. 전송 데이터를 확인하기 위하여 다음과 같이 html form을 작성하였다. First name: Last name: file: file: 그리고 다음과 같이 입력을 하고. Submit을 누르면 콘솔 창에서 아래와 같이 헤더 값이 나온다. method: POST url: /test/multipart http: HTTP/1.1 Host: localhost Connection: keep-alive Content-Length: 52251 Cache-Cont..
c#으로 근본 없는 웹서버 개발기 14 : json parse 만들기 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 파싱 작업이라는 것은 언제나 몇 번이라도. 적지 않는 정신력을 소모한다. 단순히 문자열을 틀에 맞추는 작업일 뿐인데, 깔끔하게 처리하기가 여간 까다롭다. 그런데도 마음속 어딘가에서는 끌리는 매력을 느낀다. 아마도 첫 직장 첫 제안으로 했던 풋풋함이 심층 깊은 골목의 한켠에 녹아들어 있다고 납득하고 싶다. 그날 그 여름날에는.. 반복적인 SQL을 입력하는 단순 노가다에 어떠한 패턴을 느껴버리고 나서, 어지간히도 자동화를 외치고 싶었다. 신입이었던 나는 정규식도, 문자열을 조작하는 메서드도 그러한 테크닉도 몰랐다. (물론 지금도 잘 모른다.) 그냥 IndexOf 로 상황에 맞는 단어가 나오면 거기에 맞게 문자열을 바꾸는 방..
c#으로 근본 없는 웹서버 개발기 13 : json stringify 만들기 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 서버가 브라우저와 비동기 통신을 할 때, 주로 JSON형태의 데이터를 주고받는다. c#에서 이러한 것을 다룰 때는, 편리한 도구 같은 것이 내부 라이브러리에는 없는지라, 외부 패키지인 Newtonsoft社의 Json.net을 사용한다. 그런데 지금까지 연대기에서는 외부 패키지를 사용하지 않았다. 그렇다 외부 패키지를 쓸 거였으면 지금까지 한 땀 한 땀 코딩했던 것들이 의미가 없는 것이 된다. 그렇다 이미 완전한 물건을 쓴다면 그 물건에 대한 애착은 그다지 끈끈하지 않을 것이다. 그렇다 부족하니까 채워주고 싶은 욕구다. 우선 전체적인 계획 없이 다음과 같이 근본이 되는 클래스를 작성하였다. public abstract c..