728x90

여러개 버튼을 만들어서 클릭 이벤트를 한번에 모아서 관리하는 방법에 대해 알아보겠습니다.

제가 생각 할 때 이렇게 사용한다면, 가독성을 높여주고, 코드 수정이 편리하다고 생각합니다.

사용방법은 Click 이벤트 명을 동일이름으로 사용하면 됩니다.

 

 

private void But_Remove_Click(object sender, RoutedEventArgs e)
{
    Button button = (Button)sender;
    if(                          )
    {

    }
    else if(                       )
    {

    }
}
728x90
728x90

MS사에서는 CSPROJ 파일 확장자를 개발 하였으며, Visual Studio C# Project 파일로도 널리 알려져 있다.

CSPROJ 파일은 소프트웨어 패키지 용으로 개발 되었으며, 전세계 중에 한국에서 제일 많이 사용한다.


.CSPROJ 파일 실행 방법
 - 두번 클릭하여 실행한다.
만약 어떤 프로그램을 통하여 열어야 하는지 묻는다면, 파일이 손상되어 있는 것이다.

728x90
728x90

.bat 파일을 사용하여 환경 변수 등록 방법


@echo off

setx Path "C:\Program Files\Java\jdk-15\bin"

setx path "%Path%;%PATH%"

setx /m JAVA_HOME "C:\Program Files\Java\jdk-15"

setx /m path "%JAVA_HOME%;%PATH%"

pause


Path : 사용자 유저

/m : 시스템 유저


환경변수 set와 setx 차이점

set
- 환경변수 값을 수정하고 변경 사항을 즉시 사용 가능하지만, 일시적으로 사용 가능
setx
- 영구적으로 수정하여 향후 모든 쉘에 영향을 준다.

728x90
728x90

직접 환경변수 등록하는 방법

1. 시스템 창에서 고급 시스템 설정


2. 시스템 속성 -> 환경 변수 선택


3. 편집 선택


4. 변수 이름과 변수 값 입력

728x90

'Good things to know' 카테고리의 다른 글

파일 확장자 CSPROJ란 무엇인가  (0) 2021.01.12
[배치 파일] 환경 변수 등록 방법  (0) 2021.01.07
전세계 미세먼지  (0) 2020.12.29
내 컴퓨터 RAM 용량 확인  (0) 2020.12.22
robots.txt이란?  (0) 2020.06.02
728x90

전세계 미세먼지 한번에 확인

공기, 해양, 화학물질, 미세먼지, 천문의 흐름도 알 수 있습니다.

이 흐름을 통하여, 바람, 해류, 파도 시각화도 가능하며

고도는 표면으로 부터 1000, 850, 700, 500, 250, 70, 10 hpa

오버레이로는 바람, 온도, 상대습도, WPD, 3HPA, CAPE, TPW, TCW, MSLP, MI 없음

지도 투영법은 A, CE, E, O, P, S, WB, W3 있다.


한국어 : https://earth.nullschool.net/ko/

영어 : https://earth.nullschool.net/

자세한 설명 : https://earth.nullschool.net/ko/about.html


728x90
728x90

 

대용량 파일을 읽어들이기 위해서는 전체적으로 읽어들이는 것과 한 줄씩 읽어들이는 것이 있습니다.

하지만 ReadAllLines으로는 읽을 수 없습니다. 또한 유사한 방법으로는 사용 할 수 없다고 생각합니다.

그 이유는 전체 파일을 문자열 배열의 메모리로 읽으려고 합니다. 우리의 대부분 컴퓨터는 약 8GB ~ 16GB 램을 가지고 있기 때문에 이하의 파일은

가능하나, 이상의 파일은 불가능합니다.

또한 Array 기본 최대 크기는 2GB, 파일의 줄 수보다 많을 경우 한번에 전체적으로 읽을 수 없습니다.

한번에 한줄씩 파일을 읽으면 컴퓨터에 많은 양의 메모리 사용이 필요 없으며, 한줄 읽는 메모리만으로 충분 합니다.

 

using (FileStream fs = File.Open(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
using (BufferedStream bs = new BufferedStream(fs))
using (StreamReader sr = new StreamReader(bs))
{
    string line;
    while ((line = sr.ReadLine()) != null)
    {

    }
}

 

 

내 컴퓨터 RAM 용량 확인하기
https://clear-sky-sun.tistory.com/62

728x90
728x90

내 컴퓨터의 램이 어느정도 인지 모르겠다면.......
아래의 그림과 같이 두개의 키를 동시에 눌러주면 컴퓨터 시스템 창이 보여지게 됩니다.




시스템 창이 나타나면 설치된 메모리에서 용량을 확인 할 수 있습니다.



만약... 메모리의 정보를 알고자 한다면, CPU-Z 파일을 다운 받아서 사용하시면 됩니다.

https://www.cpuid.com/softwares/cpu-z.html

728x90
728x90


없음

파일은 어떤 방식으로든 빌드에 일부가 아닙니다. 이 값은 예를 들어 "ReadMe" 파일과 같은 문서 파일에 사용할 수 있습니다.

컴파일

파일이 컴파일러에 소스 파일로 전달됩니다.

내용

콘텐츠 로 표시된 파일은 Application.GetContentStream을 호출하여 스트림으로 검색할 수 있습니다. ASP.NET 프로젝트의 경우 이러한 파일은 배포 시 사이트의 일부로 포함됩니다.

포함 된 리소스 

파일이 어셈블리에 포함될 리소스로 컴파일러에 전달됩니다. System.Reflection.Assembly.GetManifestResourceStream을 호출하여 어셈블리에서 파일을 읽을 수 있습니다.

AdditionalFiles

입력으로 C# 또는 Visual Basic 컴파일러에 전달되는 비소스 텍스트 파일입니다. 이 빌드 작업은 주로 코드 품질을 확인하기 위해 프로젝트에서 참조되는 분석기에 입력을 제공하는 데 사용됩니다. 자세한 내용은 추가 파일 사용을 참조하세요.

CodeAnalysisDictionary

코드 분석에서 맞춤법 검사에 사용하는 사용자 지정 단어 사전입니다.
방법: 코드 분석 사전 사용자 지정

ApplicationDefinition

애플리케이션을 정의하는 파일입니다. 프로젝트를 처음 만들 때 App.xaml 입니다.

Page

xaml 파일을 baml로 컴파일하는데 사용한다.
그 다음 baml은 Resource와 동일한 기술로 표현
즉, 'appname.g.resources'로 사용 가능

Resource

해당 파일을 확장명이 .g.resources 인 어셈블리 매니페스트 리소스 파일에 포함하도록 지정합니다.

SplashScreen

응용 프롷그램이 로드 될 때 자동으로 표시된 다음 프로그램 시작합니다

DesignData

XAML ViewModel 파일에 사용되며, 디자인 타임에 사용자 컨트롤을 더미 형식 및 샘플 데이터를 사용하여 볼 수 있도록 합니다.

DesignDataWithDesignTimeCreatableTypes

DesignData와 유사하지만 실제 형식을 사용합니다.

EntityDeploy

EF(Entity Framework)의 경우 EF 아티팩트의 배포를 지정하는 .edmx 파일입니다.

XanlAppDef

포함된 워크플로를 사용하여 워크플로 XAML 파을 어셈블리로 빌드하도록 지시합니다.



사용방법 

빌드 작업에서

1. ApplicationDefinition 선택시
 - 페이지를 시작폼으로 설정

2. SplashScreen 선택시
 - 페이지 시작 전 화면에 띄운 후 프로그램 시작

728x90
728x90

Directory.GetFiles()

 - 지정된 조건을 충족하는 파일 이름을 반환합니다


GetFiles(string)
 지정된 디렉터리 있는 파일의 경로를 반환

GetFiles(string, string)

 지정된 디렉터리에서 지정된 검색 패턴과 일치하는 파일 경로를 반환

GetFiles(sting, string, EnumerationOptions)

 지정된 디렉터리에서 지정된 검색 패턴 및 열거형 옵션과 일치하는 파일 경로를 반환

GetFiles(String, String, SearchOption)

 하위 디렉터리를 검색할지를 나타내는 값을 사용하여 지정된 디렉터리에서 지정된 검색 패턴과 일치하는 파일 경로을 반환


사용 방법

string path = @"D:\";

var excludedExtensions = new List<string>(new[] { ".txt", ".a" });

var file_Files = Directory.GetFiles(
path , "*.*").Where(file => !excludedExtensions.Any<string>((extension) => file.EndsWith(extension, StringComparison.CurrentCultureIgnoreCase))).ToList();


foreach(string list_file in file_Files)
{
        System.IO.File.Delete(list_file);
}










참조
https://stackoverflow.com/questions/38506928/using-directory-getfiles-to-select-all-the-files-but-a-certain-extension/38507353#38507353

https://docs.microsoft.com/ko-kr/dotnet/api/system.io.directory.getfiles?view=net-5.0

728x90
728x90

journal 파일

- 파일 이름-journal 파일을 사용합니다.
  》 예) jcode-journal

- rollback journal file이라고 부른다.
  》 rollback 방식을 통하여 Transaction을 구현한다.


SQLite rollback journal file은 Notepad++ 소프트웨어 응용 프로그램을 위해 개발 됨.

데이터 변경 순서

1. 원본 데이터를 별도의 파일에 저장
2. 데이터 변경
3. 백업 데이터 제거


728x90

+ Recent posts