모든 카테고리
Kotlin - 갤러리에서 사진, 파일 이름 가져오기
Kotlin - 갤러리에서 사진, 파일 이름 가져오기
2022.07.28val galleryIntent = Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI) galleryIntent.type = "image/*" val requestGallery: ActivityResultLauncher = registerForActivityResult( ActivityResultContracts.StartActivityForResult() ) { if (it.data?.data == null) { Toast.makeText(baseContext, "data was null.", Toast.LENGTH_SHORT).show() return@registerForActivityResult } val cursor =..
WPF TextBox에 숫자만 입력하도록 설정하는 방법
WPF TextBox에 숫자만 입력하도록 설정하는 방법
2022.07.15TextBox에다가 PreviewTextInput 이벤트에 정규식으로 숫자 입력만 처리하는 경우에는, Ctrl+V (붙여넣기)와 같은 액션을 막을 수 없기 때문에 숫자가 입력이 될 뿐더러, 그외 비정상적인 여러 방법으로 입력할 수 있다. 그리고 정규식으로 처리하기 때문에 음수나 소수와 같은 복잡한 숫자 형식이 처리하기 까다롭다. 따라서 복사, 붙여넣기를 막고, 복잡한 숫자 형식을 처리하기 위해서는 이렇게 작성해야 한다. TextBox box = new TextBox(); InputMethod.SetIsInputMethodEnabled(box, false); DataObject.AddPastingHandler(box, new DataObjectPastingEventHandler((s, e) => e.Han..
Kotlin - Gson Date 날짜 타입 파싱 간단 방법
Kotlin - Gson Date 날짜 타입 파싱 간단 방법
2022.07.09API로 Json으로된 데이터를 받다보면, 아래와 같은 형식으로 데이터가 오는 경우가 자주 있다. C# Netwonsoft Json은 별다르게 명시를 하지 않아도 DateTime으로 잘 변환해주는데 이놈의 Gson은 뭐 하나하나 해야할게 많다. { "date": "2022-07-10T10:27:47", }, { "date": "2022-07-11T10:27:47.242+09:00", } 맨 위처럼 yyyy-MM-ddTHH:mm:ss 처럼 오는 형식은 아래처럼 처리하면 된다. 'T'는 단순 문자열이기 때문에 감싸야 작은따옴표로 감싸야한다. 이렇게 하면 ParseClass를 따로 만들지 않고 처리할수 있어 가볍게 쓰기 편함. val gson: Gson = Gson().newBuilder().setDateFo..
Kotlin - Gson 제네릭을 사용하여 파싱할때 CastException이 발생하는 문제
Kotlin - Gson 제네릭을 사용하여 파싱할때 CastException이 발생하는 문제
2022.07.06Json으로 되어있는 데이터를 객체로 변환해서 써야하는데, fromJson을 사용하면 항상 변환할 객체 타입을 넣어줘야 한다. 매번 이 타입을 입력하는건 매우 귀찮은 일이 아닐수 없으므로, 제네릭을 사용하여 범용성을 높이기로 했다. 그런데, 왜인지 타입 변환이 안되고 LinkedTreeMap으로만 변환되었기 때문에, 실제로 객체로 접근하게 되면, 무수히 많은 CastException의 요청을 받을수 있다. inline fun deserialize(json: String): T { return Gson().fromJson(json, object : TypeToken() {}.type) } 위와 같이 작성하여 해결할 수 있다. Kotlin에서는 Generic을 사용하는 경우에 inline 으로 작성하지 않으..
델 XPS 9510 개봉기
델 XPS 9510 개봉기
2021.12.02원래 ASUS사의 G731GW모델을 사용하고 있었다. 17인치 모델에 RTX2070과 240Hz 1ms IPS 모니터를 장착한 아주 고사양의 게이밍 노트북이라고 할수 있겠다. 1주일에 한두번 정도 집에서 노트북을 들고다니는데, 2.7kg의 이 노트북의 무게는 어댑터까지 포함하면 족히 3kg는 넘겠다.. 이 노트북 뿐만 아니라 여러가지 가방에 들어가는 것들을 생각하면 훨씬 더 무겁다. 대충 이런 핑계로 가벼운 울트라북 시리즈를 알아보고 있었는데, 처음엔 완전 가벼운 HP Elite Dragonfly를 보았으나, 개발을 하기에는 조금 아쉬운 성능이라 Surface Book 3을 보다가 단점이 부각되 보여 포기하였고, 결국 무슨 노트북을 살까 2주넘게 고민한 끝에 XPS 15를 구매했다. 배송된 박스에는 앞면..
내가 티스토리를 선택 한 이유, 블로그 플랫폼 비교.
내가 티스토리를 선택 한 이유, 블로그 플랫폼 비교.
2020.11.22지금까지는 네이버 블로그만 이용했었다. 우선 그 이유는 네이버는 한국에서 가장 보편적으로 쓰이는 검색 엔진이었고, 가장 노출이 쉬웠다. 다음 블로그는 네이버보다 사용자가 적어 분리했고, 티스토리는 지금과 달리 초대장을 이용한 방식으로만 사용이 됬다. 그리고, 워드 프레스는 직접 유지보수를 해야한다는 부담감과 금전적 부담이 크다는 이유였다. 다시 블로그를 시작하면서 플랫폼을 바꿔보기로 시작했다. 요즘은 예전과 다르게 블로그 플랫폼들이 조금 더 늘어난것 같았다. 브런치라던가, 아니면 github.io 라던가.. 그외 여러가지 플랫폼들이 눈에 띄웠다. 우선 내가 고려했던 몇가지 플랫폼들에 대해서 말해보려고 한다. 1. 브런치 브런치는 예전 티스토리와 비슷하게 보통 사람은 글을 게시할 수 없다. 작성하는것 자체..