728x90

dev 90

[c#] 파일, 디렉토리 (File, Directory) - System.IO.File, System.IO.Directory

.Net 클래스에서 파일 및 디렉토리를 다루기 위해서 System.IO 의 다음 네임스페이스를 이용해 접근할수 있습니다. 네임스페이스 설명 System.IO.File 파일에 대한 정보를 가져오기 위한 정적 메서드 제공 System.IO.FileInfo 파일에 대한 정보를 가져오기 위한 인스턴스 제공 System.IO.Directory 디렉토리일에 대한 정보를 가져오기 위한 정적 메서드 제공 System.IO.DirectoryInfo 디렉토리에 대한 정보를 가져오기 위한 인스턴스 제공 System.IO.DriveInfo 드라이브 정보에 액세스 *Info 클래스는 인스턴스를 제공하고 Info 가 아닌 것은 정적 클래스를 제공하는것이 다르다. System.IO.File, System.IO.FileInfo 단일..

dev/asp.net, c# 2022.11.22

[.NET 6.0] WebAPI - Request.Body 데이터 수신 (IFormFile 파일,[FromBody] string)

.net 6 으로 API 프로젝트 작업을 진행하면서 Back End 작업중 POST 메서드에 대한 처리가 필요했다. 요구사항 1. POST 메서드로 기본적으로 csv, json 파일이 올수 있다. 2. 또는 파일의 내용을 body 에 직접 담아서 보낼수도 있다. 3. 응답 코드는 201로 응답한다. 2가지 방법으로 요청이 오기 때문에 Route를 2개로 따로 받아 처리하기로 하였다. (라우터 하나에 두가지 모두 받는 방법이 있는지는 잘 모르겠다.) File 로 받기 Post 메소드의 파라미터를 IFormFile 로 한다. [HttpPost] public IActionResult Post(IFormFile file) { // 파일을 읽어서(csv, json 에따라서 파싱) var fileContent = ..

dev/asp.net, c# 2022.11.21

[프로그래머스] 완주하지 못한 선수 - 코딩테스트, Javascript (해시)

완주하지 못한 선수 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예participantcompletionreturn ["le..

dev/코딩테스트 2022.11.21

[프로그래머스] 기사단원의 무기 -코딩테스트, C# (약수)

기사단원의 무기 문제 설명 숫자나라 기사단의 각 기사에게는 1번부터 number까지 번호가 지정되어 있습니다. 기사들은 무기점에서 무기를 구매하려고 합니다. 각 기사는 자신의 기사 번호의 약수 개수에 해당하는 공격력을 가진 무기를 구매하려 합니다. 단, 이웃나라와의 협약에 의해 공격력의 제한수치를 정하고, 제한수치보다 큰 공격력을 가진 무기를 구매해야 하는 기사는 협약기관에서 정한 공격력을 가지는 무기를 구매해야 합니다. 예를 들어, 15번으로 지정된 기사단원은 15의 약수가 1, 3, 5, 15로 4개 이므로, 공격력이 4인 무기를 구매합니다. 만약, 이웃나라와의 협약으로 정해진 공격력의 제한수치가 3이고 제한수치를 초과한 기사가 사용할 무기의 공격력이 2라면, 15번으로 지정된 기사단원은 무기점에서 ..

dev/코딩테스트 2022.11.21

[c#] Dictionary 와 LookUp 차이점

Dictionary 와 LookUp 비교 Lookup Dictionary 네임스페이스 System.Linq System.Collections.Generic 인터페이스 ILookup IDictionary 생성자 유무 LookUp : 없음 Dcitionary : Dictionary * lookup은 생성자가 없어 객체 생성시 오류 발생 Key 값의 고유 여부 Dictionary 타입은 Key 가 고유하기 때문에 중복 key 등록이 불가하나 LookUp 은 동일키에 중복 데이터 추가가 가능하다. List students = new List { new Student{grade = 3, name = "Tom", scores = new int[] {60, 80} }, new Student{grade = 3, nam..

dev/asp.net, c# 2022.11.17

[c#] LINQ 컬렉션 표준 쿼리 메서드 5 - (프로젝션, 요소) Select, SelectMany, Zip, ElementAt, First, Last, Single

컬렉션 작업을 할때 가장 많이 이용하는 함수이기도 한 프로젝션과 요소작업 컬렉션 메소드에 대해 알아봅니다. 메서드 메서드 이름 설명 C# 쿼리 식 구문 Select 변환 함수를 기반으로 하는 값을 프로젝션합니다. select SelectMany 변환 함수를 기반으로 하는 값의 시퀀스를 프로젝션한 다음 하나의 시퀀스로 평면화합니다. 여러 from 절 사용 Zip 지정된 2~3개 시퀀스의 요소를 사용하여 튜플 시퀀스를 생성합니다. ElementAt 컬렉션의 지정된 인덱스에 있는 요소를 반환합니다. ElementAtOrDefault 컬렉션의 지정된 인덱스에 있는 요소를 반환하거나 인덱스가 범위를 벗어나면 기본값을 반환합니다. First 컬렉션의 첫 번째 요소 또는 특정 조건에 맞는 첫 번째 요소를 반환합니다...

dev/asp.net, c# 2022.11.16

[c#] LINQ 컬렉션 표준 쿼리 메서드 4 - (조인, 그룹, 집계, 최대, 최소, 합계, 평균, 개수) Join, GroupJoin, GroupBy, ToLookUp, Max, Min, Count, Sum, Average

수량자, 생성 관련한 컬렉션 메소드에 대해 알아봅니다. 메서드 메서드 이름 설명 C# 쿼리 식 구문 Join 키를 기준으로 두 시퀀스를 Join한 다음 값 추출 join … in … on … equals … GroupJoin 키를 기준으로 두 시퀀스를 Join한 다음 결과를 그룹화 join … in … on … equals … into … GroupBy 공통 특성을 공유하는 요소를 그룹화 group … by group … by … into … ToLookup 키 선택기 함수에 따라 Lookup(일대다 사전)에 요소를 삽입 Aggregate 컬렉션 값에 대해 사용자 지정 집계 작업을 수행 Average 평균 값 Count 수량 Max 최대값 Min 최소값 Sum 합계 Join 키가 같은지 여부에 따라 두 ..

dev/asp.net, c# 2022.11.15

[c#] LINQ 컬렉션 표준 쿼리 메서드 3 - (수량자, 포함여부, 생성) Contains, All, Any, Empty, Repeat, Range

수량자, 생성 관련한 컬렉션 메소드에 대해 알아봅니다. 메서드 메서드 이름 설명 C# 쿼리 식 구문 All 시퀀스의 모든 요소가 조건을 만족하는지를 확인 Any 시퀀스의 임의의 요소가 조건을 만족하는지를 확인 Contains 시퀀스에 지정된 요소가 들어 있는지를 확인 DefaultIfEmpty 빈 컬렉션을 기본값을 갖는 singleton 컬렉션으로 변경 Empty 비어 있는 컬렉션을 반환 Range 일련의 숫자를 포함하는 컬렉션을 생성 Repeat 반복되는 값이 하나 들어 있는 컬렉션을 생성 수량자 시퀀스에서 조건을 충족하는 요소가 일부인지 전체인지를 나타내는 Boolean 값을 반환 All, Any, Contains List students = new List { new Student{grade = 3..

dev/asp.net, c# 2022.11.15

[c#] LINQ 컬렉션 표준 쿼리 메서드 2 - (중복제거,차집합,교집합,합집합,건너뛰기) Concat, Distinct, Except , Intersect, Union, Skip, Take, 객체 중복 제거하기,

집합, 분할, 연결 관련한 컬렉션 메소드 에 대해 알아봅니다. 메서드 메서드 이름 설명 C# 쿼리 식 구문 Distinct 컬렉션에서 중복 값을 제거합니다. Except 두 번째 컬렉션에 표시되지 않는 한 컬렉션의 요소를 의미하는 차집합을 반환 Intersect 두 컬렉션에 각각 표시되는 요소를 의미하는 교집합을 반환합니다. Union 두 컬렉션 중 하나에 표시되는 고유한 요소를 의미하는 합집합을 반환합니다. Concat 두 시퀀스를 연결하여 하나의 시퀀스를 구성 Skip 시퀀스에서 지정한 위치까지 요소를 건너뜁니다. SkipLast 시퀀스에서 뒤에서 지정한 위치까지 요소를 건너뜁니다. SkipWhile 요소가 조건을 충족하지 않을 때까지 조건자 함수를 기반으로 하여 요소를 건너뜁니다. Take 시퀀스에..

dev/asp.net, c# 2022.11.11

[c#] LINQ 컬렉션 표준 쿼리 메서드 1 - (정렬, 필터 : OrderBy, ThenBy, Reverse, OfType, Where )

정렬과 필터링(조건) 에 대해 알아봅니다. 메서드 메서드 이름 설명 C# 쿼리 식 구문 OrderBy 오름차순으로 정렬 orderby OrderByDescending 내림차순으로 정렬 orderby … descending ThenBy 2차 정렬을 오름차순으로 수행 orderby …, … ThenByDescending 2차 정렬을 내림차순으로 수행 orderby …, … descending Reverse 요소의 순서를 거꾸로 변경 OfType 지정된 형식으로 캐스트할 수 있는지 Where 조건에 따라 값을 선택 where 정렬 정렬은 특정 기준으로 시퀀스들의 요소를 정렬합니다. 정렬 (OrderBy, OrderbyDecending, ThenBy, ThenbyDecending) 아래 예제는 시퀀스의 요소들을..

dev/asp.net, c# 2022.11.11
728x90