<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>program1472 &amp;gt; 자료실 &amp;gt; vb.net</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02</link>
<language>ko</language>
<description>vb.net (2025-07-02 19:00:29)</description>

<item>
<title>[업데이트중] HttpWebRequest처럼 HTTP 요청을 보낼 수 있고, 더 다양한 기능이나 사용 편의성을 제공하는 .NET 호환 라이브러리 및 도구</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=264</link>
<description><![CDATA[<p><br /></p><h3>1. <strong>HttpClient</strong> (System.Net.Http)</h3><ul><li>
<p>최신 .NET에서 권장되는 기본 HTTP 라이브러리</p>
</li>
<li>
<p>비동기/동기, 쿠키, 헤더, 인증, JSON 직렬화 등 지원</p>
</li>
<li>
<p><strong>TLS 1.2 기본 지원</strong>, <code>HttpWebRequest</code>보다 사용 간결</p></li></ul><div><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(166,188,209);"><tbody><tr><td width="1153" style="padding:3px 4px 2px;background-color:rgb(246,248,250);border-right:1px solid rgb(225,238,247);text-align:left;"><p><span style="color:rgb(61,118,171);">Dim client As New HttpClient()</span></p><p><span style="color:rgb(61,118,171);">Dim response = Await client.GetAsync("<a href="https://example.com" rel="nofollow">https://example.com</a>")</span></p><p><span style="color:rgb(61,118,171);">Dim content = Await response.Content.ReadAsStringAsync()</span></p></td>
</tr></tbody></table> </div><h3>2. <strong>RestSharp</strong></h3><ul><li>
<p>인기 있는 .NET용 REST API 클라이언트 라이브러리</p>
</li>
<li>
<p><code>HttpWebRequest</code>보다 간단하게 REST 요청 구성 가능</p>
</li>
<li>
<p>JSON 직렬화, 인증, 쿠키 자동 처리 기능 내장</p></li></ul><div><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(166,188,209);"><tbody><tr><td width="1153" style="padding:3px 4px 2px;background-color:rgb(246,248,250);border-right:1px solid rgb(225,238,247);text-align:left;"><p><span style="color:rgb(61,118,171);">Dim client = New RestClient("<a href="https://example.com" rel="nofollow">https://example.com</a>")</span></p><p><span style="color:rgb(61,118,171);">Dim request = New RestRequest("endpoint", Method.GET)</span></p><p><span style="color:rgb(61,118,171);">request.AddHeader("User-Agent", "...")</span></p><p><span style="color:rgb(61,118,171);">Dim response = client.Execute(request)</span></p></td>
</tr></tbody></table><p>NuGet: <code>Install-Package RestSharp</code></p><p> </p></div><h3>3. <strong>Flurl.Http</strong></h3><ul><li>
<p>HttpClient를 래핑한 간결한 문법 제공</p>
</li>
<li>
<p>체이닝 방식으로 URL, 파라미터, 헤더 등 쉽게 구성 가능</p></li></ul><div><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(166,188,209);"><tbody><tr><td width="1153" style="padding:3px 4px 2px;background-color:rgb(246,248,250);border-right:1px solid rgb(225,238,247);text-align:left;"><p><span style="color:rgb(61,118,171);"> Dim json = Await "<a href="https://example.com" rel="nofollow">https://example.com</a>"</span></p><p><span style="color:rgb(61,118,171);">    .WithHeader("User-Agent", "...")</span></p><p><span style="color:rgb(61,118,171);">    .GetStringAsync()</span></p></td>
</tr></tbody></table> </div><p><br /></p><p>NuGet: <code>Install-Package Flurl.Http</code></p><p><br /></p><h3>4. <strong>WebClient</strong> (구버전)</h3><ul><li>
<p>매우 간단한 동기식 요청 도구</p>
</li>
<li>
<p>쿠키, 헤더 처리 제한적 / 기본 .NET 포함</p></li></ul><div><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(166,188,209);"><tbody><tr><td width="1153" style="padding:3px 4px 2px;background-color:rgb(246,248,250);border-right:1px solid rgb(225,238,247);text-align:left;"><p><span style="color:rgb(61,118,171);">Dim client As New WebClient()</span></p><p><span style="color:rgb(61,118,171);">Dim content As String = client.DownloadString("<a href="https://example.com" rel="nofollow">https://example.com</a>")</span></p></td>
</tr></tbody></table><br /> </div><h3>5. <strong>Edge.js + Node.js (고급)</strong></h3><ul><li>
<p>VB.NET에서 Node.js의 <code>axios</code> 또는 <code>puppeteer</code> 호출</p>
</li>
<li>
<p>매우 고급 상황에서 브라우저 수준 우회 요청 가능</p></li></ul><div><br /></div><table style="text-align:center;"><thead><tr><th>목적</th><th>추천 라이브러리</th></tr></thead><tbody><tr><td>고성능 REST API</td><td><code>RestSharp</code>, <code>Flurl</code></td></tr><tr><td>브라우저처럼 세밀 제어</td><td><code>curl</code> or <code>puppeteer</code></td></tr><tr><td>비동기 / 표준 HTTP 지원</td><td><code>HttpClient</code></td></tr><tr><td>단순 동기 요청</td><td><code>WebClient</code>, <code>HttpWebRequest</code></td></tr></tbody></table><p><br /></p><p><br /></p><p><br /></p><p>CreateObject("MSXML2.ServerXMLHTTP.6.0") 는 크롤링에 사용할 수 없을 것 같다.</p><p><br /></p>
<div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Private</span> Function xWinHttp(Optional mesode <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">"GET"</span>, Optional URL <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">Nothing</span>, Optional Hadders <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">Nothing</span>, Optional enQuery <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">""</span>) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> T <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">""</span>, O <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Do</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> <span style="color:#a71d5d;">Not</span> isWork <span style="color:#a71d5d;">Then</span> <span style="color:#a71d5d;">Return</span> <span style="color:#066de2;">Nothing</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> isDelay AndAlso delayValue <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0099cc;">0</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                program1472.Functions.Time.Delay(delayValue)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Dim</span> agent <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> userAgent()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            Try</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                ServicePointManager.SecurityProtocol <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> SecurityProtocolType.Tls12</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Static xhr <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> CreateObject(<span style="color:#63a35c;">"MSXML2.ServerXMLHTTP.6.0"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.Open(mesode.ToUpper(), URL, <span style="color:#066de2;">False</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setOption(<span style="color:#0099cc;">2</span>, <span style="color:#0099cc;">13056</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"User-Agent"</span>, agent)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Accept"</span>, <span style="color:#63a35c;">"application/json, text/plain, */*"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Accept-Language"</span>, <span style="color:#63a35c;">"ko-KR,ko;q=0.8,en-US;q=0.6,en;q=0.4"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Referer"</span>, $<span style="color:#63a35c;">"<a href="https://map.naver.com/p/search/%7BenQuery%7D?c=15.00%2C0%2C0%2C0%2Cdh" rel="nofollow">https://map.naver.com/p/search/{enQuery}?c=15.00%2C0%2C0%2C0%2Cdh</a>"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Cache-Control"</span>, <span style="color:#63a35c;">"no-cache"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Pragma"</span>, <span style="color:#63a35c;">"no-cache"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Expires"</span>, <span style="color:#63a35c;">"Sat, 01 Jan 2000 00:00:00 GMT"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Connection"</span>, <span style="color:#63a35c;">"keep-alive"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Sec-Fetch-Dest"</span>, <span style="color:#63a35c;">"empty"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Sec-Fetch-Mode"</span>, <span style="color:#63a35c;">"cors"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"Sec-Fetch-Site"</span>, <span style="color:#63a35c;">"same-origin"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.setRequestHeader(<span style="color:#63a35c;">"TE"</span>, <span style="color:#63a35c;">"trailers"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xhr.send</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                T <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> xhr.responseText</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            Catch ex <span style="color:#a71d5d;">As</span> Exception</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                T <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">""</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                userAgentOriginalList.Remove(agent)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                LOG(ex.Message)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                Threading.Thread.Sleep(<span style="color:#0099cc;">1200</span>) : Application.DoEvents()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> Try</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> T.IndexOf(<span style="color:#63a35c;">"&gt;일시적인 서비스 오류가 발생했습니다.&lt;"</span>) <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span><span style="color:#0099cc;">1</span> <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">                userAgentOriginalList.Remove(agent)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                T <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#63a35c;">""</span> : LOG(<span style="color:#63a35c;">"[ERR] 과도한 트래픽으로 인한 일시적인 서비스 오류가 발생했습니다."</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                program1472.Functions.Time.Delay(<span style="color:#0099cc;">12000</span>, <span style="color:#066de2;">CType</span>(MainForm, fMain).LOG_LIST)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">                xWinHttp(, $<span style="color:#63a35c;">"<a href="https://map.naver.com/p/search/%7BenQuery%7D?c=15.00%2C0%2C0%2C0%2Cdh" rel="nofollow">https://map.naver.com/p/search/{enQuery}?c=15.00%2C0%2C0%2C0%2Cdh</a>"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        Loop Until T.Length <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span> <span style="color:#0099cc;">0</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        O <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> JSON.DeserializeObject(T)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        JSON.AddValue(O, <span style="color:#63a35c;">"url"</span>, URL)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> timestamp <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> DateTime.Now.ToString(<span style="color:#63a35c;">"yyyyMMdd_HHmmssfffff"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> fileName <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> IO.Path.Combine(APP_EXPORT_PATH, $<span style="color:#63a35c;">"{timestamp}.json"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        IO.File.WriteAllText(fileName, O.ToString)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Return</span> O</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> Function</div><p><br /></p><p>동일 요청을 <code>WinHttpRequest</code>, <code>HttpWebRequest</code>, <code>curl</code>에서 보낼 때는 정상 응답을 받는데 MSXML2.ServerXMLHTTP.6.0은 오류를 토해낸다.</p><table class="__se_tbl" border="0" cellpadding="0" cellspacing="0" style="border:1px solid rgb(166,188,209);"><tbody><tr><td width="1153" style="padding:3px 4px 2px;background-color:rgb(246,248,250);border-right:1px solid rgb(225,238,247);text-align:left;"><p><span style="color:rgb(61,118,171);"> &lt;html&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;head&gt;&lt;title&gt;403 Forbidden&lt;/title&gt;&lt;/head&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;body&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;center&gt;&lt;h1&gt;403 Forbidden&lt;/h1&gt;&lt;/center&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;hr&gt;&lt;center&gt;nginx&lt;/center&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;/body&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;/html&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;!-- a padding to disable MSIE and Chrome friendly error page --&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;!-- a padding to disable MSIE and Chrome friendly error page --&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;!-- a padding to disable MSIE and Chrome friendly error page --&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;!-- a padding to disable MSIE and Chrome friendly error page --&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;!-- a padding to disable MSIE and Chrome friendly error page --&gt;</span></p><p><span style="color:rgb(61,118,171);">&lt;!-- a padding to disable MSIE and Chrome friendly error page --&gt;</span></p></td>
</tr></tbody></table><p><br /></p><p><br /></p>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2025-07-02T19:00:29+09:00</dc:date>
</item>


<item>
<title>[vb.net] VB.NET에서 Excel 파일 데이터 추출(읽기) 방법</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=263</link>
<description><![CDATA[<div></div><div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span>엑셀(Excel) 데이터 추출</span></h4>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>VB.NET을 사용하여 엑셀 파일을 읽는 방법을 소개합니다. OfficeOpenXml 라이브러리를 활용하여 엑셀 파일을 열고, 첫 번째 워크시트에서 데이터를 추출하여 DataTable에 저장합니다. 각 행과 열을 반복하면서 셀 값들을 데이터 테이블에 추가하고, 최종적으로 완성된 데이터 테이블을 반환합니다. 이 함수는 엑셀 파일의 데이터 구조가 올바르지 않을 경우에는 적절한 로그 메시지를 출력하고 null을 반환하여 오류 처리를 합니다.</span></p>

<p><span>이 함수는 비상업적 용도로 라이센스를 설정할 수 있는 옵션을 제공하며, 엑셀 파일의 내용을 문자열로 처리하여 DataTable에 저장하는 예시를 제공합니다.</span></p>

<p><span>이 VB.NET 함수를 사용하면 엑셀 파일에서 데이터를 효과적으로 추출하고 관리할 수 있습니다.</span></p>

<p><span>​</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span>NuGet 추가하기</span></h4>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>NuGet에서 "EPPlus"를 검색해서 아래 사진처럼 설치 합니다.</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div><img src="../../../data/editor/2407/87828ecf4041ed3b70bf643ba6e22aeb_1721172571_2319.png" title="87828ecf4041ed3b70bf643ba6e22aeb_1721172571_2319.png" alt="87828ecf4041ed3b70bf643ba6e22aeb_1721172571_2319.png" /><br style="clear:both;" /><br /></div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span><b>​</b></span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>Excel 파일 데이터 추출(읽기) 함수 (ReadExcelFile)</b></span></h4>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>이 ExcelReader 클래스의 ReadExcelFile 함수는 지정된 엑셀 파일을 읽어 DataTable 형식으로 반환하는 기능을 제공합니다.</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<pre class="vbnet"><code>Imports System.IO

Imports OfficeOpenXml



Public Class ExcelReader

    Private Shared isOpen As Boolean



    Public Shared Function ReadExcelFile(filePath As String) As DataTable

        If Not isOpen Then OfficeOpenXml.ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial ' 또는 LicenseContext.Commercial

        Dim dt As New DataTable()



        ' Load the Excel file

        Dim fileInfo As New FileInfo(filePath)

        Using package As New ExcelPackage(fileInfo)

            ' Get the first worksheet in the workbook

            Dim worksheet As ExcelWorksheet = package.Workbook.Worksheets(0)

            If worksheet.Dimension Is Nothing Then

                program1472.LOG("데이터 구조가 올바르지 않습니다.",, 1)

                Return Nothing

            End If

            ' Loop through all rows from the first row (start from 1 to skip header row)

            For row As Integer = worksheet.Dimension.Start.Row To worksheet.Dimension.End.Row

                ' Create a new DataRow

                Dim newRow As DataRow = dt.NewRow()



                ' Loop through all columns in the current row

                For col As Integer = worksheet.Dimension.Start.Column To worksheet.Dimension.End.Column

                    ' Add the cell value to the DataRow

                    If Not dt.Columns.Contains((col - 1).ToString) Then dt.Columns.Add((col - 1).ToString, GetType(String))

                    newRow(col - 1) = If(worksheet.Cells(row, col).Value IsNot Nothing, worksheet.Cells(row, col).Value.ToString(), Nothing)

                Next



                ' Add the DataRow to the DataTable

                dt.Rows.Add(newRow)

            Next

        End Using



        Return dt

    End Function

End Class</code></pre>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>​</span></p>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<blockquote>

<div>

<h2><b><span style="font-family:'Noto Serif KR';">장점</span></b></h2>

</div>

</blockquote>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span><b>​</b></span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>간편한 데이터 추출</b></span></h4>

<p><b>OfficeOpenXml 라이브러리를 이용하여 엑셀 파일을 손쉽게 열고 데이터를 추출할 수 있습니다. 필요한 데이터를 한 번에 DataTable 형식으로 변환하여 처리할 수 있어 개발 시간을 단축시킵니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>​</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>유연성과 확장성</b></span></h4>

<p><b>엑셀 파일의 첫 번째 워크시트에서 데이터를 읽지만, 필요에 따라 다른 워크시트나 특정 범위의 데이터를 읽도록 함수를 수정할 수 있습니다. 이는 다양한 엑셀 데이터 처리 요구사항에 대응할 수 있는 유연성을 제공합니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>​</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>오류 처리 기능</b></span></h4>

<p><b>함수는 데이터 구조가 올바르지 않은 경우에 대비하여 적절한 오류 메시지를 출력하고 처리를 중단합니다. 이로 인해 예기치 않은 데이터 처리 오류를 방지할 수 있습니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>​</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>비상업적 용도 지원</b></span></h4>

<p><b>OfficeOpenXml 라이브러리는 비상업적 용도로 라이센스를 설정할 수 있는 옵션을 제공하므로, 개인 프로젝트나 교육적 목적에서 자유롭게 활용할 수 있습니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>이 VB.NET 함수를 사용하면 엑셀 파일에서 데이터를 효과적으로 추출하고 관리할 수 있습니다.</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div><img src="../../../data/editor/2407/87828ecf4041ed3b70bf643ba6e22aeb_1721172590_6795.png" title="87828ecf4041ed3b70bf643ba6e22aeb_1721172590_6795.png" alt="87828ecf4041ed3b70bf643ba6e22aeb_1721172590_6795.png" /><br style="clear:both;" /><br /></div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span><b>이와 같은 엑셀 파일을 데이터 테이블로 변환하여 DataGridView로 보여줍니다.</b></span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div><img src="../../../data/editor/2407/87828ecf4041ed3b70bf643ba6e22aeb_1721172602_5515.png" title="87828ecf4041ed3b70bf643ba6e22aeb_1721172602_5515.png" alt="87828ecf4041ed3b70bf643ba6e22aeb_1721172602_5515.png" /><br style="clear:both;" /><br /></div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>​</span></p>

<p><span>​</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span>Example:</span></h4>

<pre class="vbnet"><code>    Private Sub BhsButton3_Click(sender As Object, e As EventArgs) Handles BhsButton3.Click

        Dim filePath As String = program1472.Functions.File.OpenFilePicker(program1472.Functions.File.getfilter("excel"))

        template = ExcelReader.ReadExcelFile(filePath)

        BhsDataGridView1.DataSource = template

    End Sub</code></pre>

<pre class="vbnet"><code>Imports System.IO

Imports System.Windows.Forms



Namespace Functions

    Public Class [File]

        Public Shared Function getfilter(datatype As String) As String

            Select Case datatype.ToLower

                Case "img", "image", "이미지", "사진" : Return "이미지 파일 선택 (*.jpg;*.jpeg;*.png)|*.jpg;*.jpeg;*.png"

                Case "pdf" : Return "PDF 파일 선택 (*.pdf)|*.pdf"

                Case "excel" : Return "Excel 파일 선택 (Excel Files)|*.xls;*.xlsx;*.xlsm"

                Case Else : Return String.Format("{0} 파일 (*.{0})|*.{0}", datatype)

            End Select

        End Function



        Public Shared Function OpenFilePicker(filter As String, Optional title As String = "Please select a file") As String

            Using openFileDialog As New OpenFileDialog()

                openFileDialog.Title = title

                openFileDialog.Filter = filter

                openFileDialog.RestoreDirectory = True



                If openFileDialog.ShowDialog() = DialogResult.OK Then

                    Return openFileDialog.FileName

                Else

                    Return String.Empty

                End If

            End Using

        End Function    

	End Class

End Namespace</code></pre>

</div>

</div>

</div>

</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-07-17T08:30:27+09:00</dc:date>
</item>


<item>
<title>[vb.net] VB.NET에서 Excel 파일 데이터 추출(읽기) 방법</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=262</link>
<description><![CDATA[<div></div><div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span>엑셀(Excel) 데이터 추출</span></h4>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>VB.NET을 사용하여 엑셀 파일을 읽는 방법을 소개합니다. OfficeOpenXml 라이브러리를 활용하여 엑셀 파일을 열고, 첫 번째 워크시트에서 데이터를 추출하여 DataTable에 저장합니다. 각 행과 열을 반복하면서 셀 값들을 데이터 테이블에 추가하고, 최종적으로 완성된 데이터 테이블을 반환합니다. 이 함수는 엑셀 파일의 데이터 구조가 올바르지 않을 경우에는 적절한 로그 메시지를 출력하고 null을 반환하여 오류 처리를 합니다.</span></p>

<p><span>이 함수는 비상업적 용도로 라이센스를 설정할 수 있는 옵션을 제공하며, 엑셀 파일의 내용을 문자열로 처리하여 DataTable에 저장하는 예시를 제공합니다.</span></p>

<p><span>이 VB.NET 함수를 사용하면 엑셀 파일에서 데이터를 효과적으로 추출하고 관리할 수 있습니다.</span></p>

<p><span>​</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span>NuGet 추가하기</span></h4>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>NuGet에서 "EPPlus"를 검색해서 아래 사진처럼 설치 합니다.</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div><img src="../../../data/editor/2407/a762cde530949007c7f42b1c6198d365_1721094668_853.png" title="a762cde530949007c7f42b1c6198d365_1721094668_853.png" alt="a762cde530949007c7f42b1c6198d365_1721094668_853.png" /><br style="clear:both;" /><br /></div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span><b>​</b></span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>Excel 파일 데이터 추출(읽기) 함수 (ReadExcelFile)</b></span></h4>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>이 ExcelReader 클래스의 ReadExcelFile 함수는 지정된 엑셀 파일을 읽어 DataTable 형식으로 반환하는 기능을 제공합니다.</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<pre class="vbnet"><code>Imports System.IO

Imports OfficeOpenXml



Public Class ExcelReader

    Private Shared isOpen As Boolean



    Public Shared Function ReadExcelFile(filePath As String) As DataTable

        If Not isOpen Then OfficeOpenXml.ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial ' 또는 LicenseContext.Commercial

        Dim dt As New DataTable()



        ' Load the Excel file

        Dim fileInfo As New FileInfo(filePath)

        Using package As New ExcelPackage(fileInfo)

            ' Get the first worksheet in the workbook

            Dim worksheet As ExcelWorksheet = package.Workbook.Worksheets(0)

            If worksheet.Dimension Is Nothing Then

                program1472.LOG("데이터 구조가 올바르지 않습니다.",, 1)

                Return Nothing

            End If

            ' Loop through all rows from the first row (start from 1 to skip header row)

            For row As Integer = worksheet.Dimension.Start.Row To worksheet.Dimension.End.Row

                ' Create a new DataRow

                Dim newRow As DataRow = dt.NewRow()



                ' Loop through all columns in the current row

                For col As Integer = worksheet.Dimension.Start.Column To worksheet.Dimension.End.Column

                    ' Add the cell value to the DataRow

                    If Not dt.Columns.Contains((col - 1).ToString) Then dt.Columns.Add((col - 1).ToString, GetType(String))

                    newRow(col - 1) = If(worksheet.Cells(row, col).Value IsNot Nothing, worksheet.Cells(row, col).Value.ToString(), Nothing)

                Next



                ' Add the DataRow to the DataTable

                dt.Rows.Add(newRow)

            Next

        End Using



        Return dt

    End Function

End Class</code></pre>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>​</span></p>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<blockquote>

<div>

<h2><b><span style="font-family:'Noto Serif KR';">장점</span></b></h2>

</div>

</blockquote>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span><b>​</b></span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>간편한 데이터 추출</b></span></h4>

<p><b>OfficeOpenXml 라이브러리를 이용하여 엑셀 파일을 손쉽게 열고 데이터를 추출할 수 있습니다. 필요한 데이터를 한 번에 DataTable 형식으로 변환하여 처리할 수 있어 개발 시간을 단축시킵니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>​</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>유연성과 확장성</b></span></h4>

<p><b>엑셀 파일의 첫 번째 워크시트에서 데이터를 읽지만, 필요에 따라 다른 워크시트나 특정 범위의 데이터를 읽도록 함수를 수정할 수 있습니다. 이는 다양한 엑셀 데이터 처리 요구사항에 대응할 수 있는 유연성을 제공합니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>​</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>오류 처리 기능</b></span></h4>

<p><b>함수는 데이터 구조가 올바르지 않은 경우에 대비하여 적절한 오류 메시지를 출력하고 처리를 중단합니다. 이로 인해 예기치 않은 데이터 처리 오류를 방지할 수 있습니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>​</b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span><b>비상업적 용도 지원</b></span></h4>

<p><b>OfficeOpenXml 라이브러리는 비상업적 용도로 라이센스를 설정할 수 있는 옵션을 제공하므로, 개인 프로젝트나 교육적 목적에서 자유롭게 활용할 수 있습니다.</b></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<p><span><b>이 VB.NET 함수를 사용하면 엑셀 파일에서 데이터를 효과적으로 추출하고 관리할 수 있습니다.</b></span></p><p><span><b><br /></b></span></p>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div><img src="../../../data/editor/2407/a762cde530949007c7f42b1c6198d365_1721094681_079.png" title="a762cde530949007c7f42b1c6198d365_1721094681_079.png" alt="a762cde530949007c7f42b1c6198d365_1721094681_079.png" /><br style="clear:both;" /><br /></div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span><b>이와 같은 엑셀 파일을 데이터 테이블로 변환하여 DataGridView로 보여줍니다.</b></span></p><p><span><b><br /></b></span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div><img src="../../../data/editor/2407/a762cde530949007c7f42b1c6198d365_1721094691_4355.png" title="a762cde530949007c7f42b1c6198d365_1721094691_4355.png" alt="a762cde530949007c7f42b1c6198d365_1721094691_4355.png" /><br style="clear:both;" /><br /></div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<p><span>​</span></p>

<p><span>​</span></p>

</div>

</div>

</div>

</div>

<div style="background-color:#ffffff;color:#8a837e;text-align:left;">

<div>

<div>

<div>

<h4><span>Example:</span></h4>

<pre class="vbnet"><code>    Private Sub BhsButton3_Click(sender As Object, e As EventArgs) Handles BhsButton3.Click

        Dim filePath As String = program1472.Functions.File.OpenFilePicker(program1472.Functions.File.getfilter("excel"))

        template = ExcelReader.ReadExcelFile(filePath)

        BhsDataGridView1.DataSource = template

    End Sub</code></pre>

<pre class="vbnet"><code>Imports System.IO

Imports System.Windows.Forms



Namespace Functions

    Public Class [File]

        Public Shared Function getfilter(datatype As String) As String

            Select Case datatype.ToLower

                Case "img", "image", "이미지", "사진" : Return "이미지 파일 선택 (*.jpg;*.jpeg;*.png)|*.jpg;*.jpeg;*.png"

                Case "pdf" : Return "PDF 파일 선택 (*.pdf)|*.pdf"

                Case "excel" : Return "Excel 파일 선택 (Excel Files)|*.xls;*.xlsx;*.xlsm"

                Case Else : Return String.Format("{0} 파일 (*.{0})|*.{0}", datatype)

            End Select

        End Function



        Public Shared Function OpenFilePicker(filter As String, Optional title As String = "Please select a file") As String

            Using openFileDialog As New OpenFileDialog()

                openFileDialog.Title = title

                openFileDialog.Filter = filter

                openFileDialog.RestoreDirectory = True



                If openFileDialog.ShowDialog() = DialogResult.OK Then

                    Return openFileDialog.FileName

                Else

                    Return String.Empty

                End If

            End Using

        End Function    

	End Class

End Namespace</code></pre>

</div>

</div>

</div>

</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-07-16T10:51:51+09:00</dc:date>
</item>


<item>
<title>[vb.net] 윈도우 폼에서 자식 컨트롤의 특정(Closed) 메서드 자동 호출하기</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=261</link>
<description><![CDATA[<div></div><p>윈도우 폼 애플리케이션을 개발할 때 종종 각 컨트롤이 폼이 닫힐 때 특정 작업을 수행해야 할 필요가 있습니다.</p><p><br /></p><p>예를 들어, 데이터를 저장하거나 리소스를 정리하는 등의 작업이 이에 해당합니다.</p><p><br /></p><p>이를 위해 유용한 방법 중 하나는 컨트롤이 자체적으로 <code>Closed</code> 메서드를 구현하여 이러한 작업을 처리하는 것입니다.</p><p><br /></p><p>여기서 소개할 소스 코드는 간단한 윈도우 폼의 <code>FormClosed</code> 이벤트에서 모든 컨트롤에 대해 <code>Closed</code> 메서드를 호출하는 방법을 구현한 것입니다.</p><p><br /></p><p>이 방법은 각 컨트롤이 자체적으로 <code>Closed</code> 메서드를 구현하고 있는지 확인하고, 구현되어 있다면 해당 메서드를 실행합니다.</p><p><br /></p><div style="text-align:center;" align="center"><img src="../../../data/editor/2407/ebc5722a48991ee4692cc57eb041287c_1720749266_0767.jpg" title="ebc5722a48991ee4692cc57eb041287c_1720749266_0767.jpg" alt="ebc5722a48991ee4692cc57eb041287c_1720749266_0767.jpg" /></div> <code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> fMain_FormClosed(sender <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, e <span style="color:#a71d5d;">As</span> FormClosedEventArgs) <span style="color:#a71d5d;">Handles</span> <span style="color:#a71d5d;">Me</span>.FormClosed</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>    <span style="color:#a71d5d;">For</span> Each ctl <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span> In <span style="color:#a71d5d;">Me</span>.Controls</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>        <span style="color:#a71d5d;">If</span> HasClosedMethod(ctl) <span style="color:#a71d5d;">Then</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>            <span style="color:#a71d5d;">Dim</span> method <span style="color:#a71d5d;">As</span> MethodInfo <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> ctl.GetType().GetMethod(<span style="color:#63a35c;">"Closed"</span>)</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>            method.Invoke(ctl, <span style="color:#066de2;">Nothing</span>)</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>        <span style="color:#a71d5d;">Else</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>            Console.WriteLine(<span style="color:#63a35c;">"Closed 메서드가 구현되지 않은 컨트롤입니다."</span>)</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>        <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>    <span style="color:#a71d5d;">Next</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code> </code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code><span style="color:#999999;">' 컨트롤이 Closed 메서드를 구현했는지 확인하는 함수</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code><span style="color:#a71d5d;">Private</span> Function HasClosedMethod(control <span style="color:#a71d5d;">As</span> Control) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Boolean</span></code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>    <span style="color:#a71d5d;">Dim</span> method <span style="color:#a71d5d;">As</span> MethodInfo <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> control.GetType().GetMethod(<span style="color:#63a35c;">"Closed"</span>)</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code>    <span style="color:#a71d5d;">Return</span> method IsNot <span style="color:#066de2;">Nothing</span> AndAlso method.ReturnType Is GetType(Void)</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code><span style="color:#a71d5d;">End</span> Function</code></div><code></code><div style="padding:0 6px;white-space:pre;line-height:130%;"><code> </code></div><code></code><p><br /></p><p>위 소스 코드는 다음과 같은 기능을 수행합니다:</p><ol><li><strong><code>fMain_FormClosed</code> 메서드</strong>: 이는 윈도우 폼의 <code>FormClosed</code> 이벤트 핸들러로서, 폼이 닫힐 때마다 폼 안에 있는 모든 컨트롤을 순회합니다.</li><li><strong><code>HasClosedMethod</code> 함수</strong>: 이 함수는 각 컨트롤이 <code>Closed</code> 메서드를 구현하고 있는지를 확인합니다. 만약 해당 메서드가 구현되어 있다면 <code>True</code>를 반환하고, 그렇지 않으면 <code>False</code>를 반환합니다.</li></ol><h4>사용 예시</h4><p>이 소스 코드를 사용하면 각 컨트롤이 자체적으로 폼이 닫힐 때 수행할 작업을 정의할 수 있습니다. 예를 들어, 텍스트 상자 컨트롤에서 데이터를 저장하거나, 파일 브라우저에서 열린 파일을 닫는 등의 작업을 <code>Closed</code> 메서드에 구현할 수 있습니다. 이를 통해 코드의 유지보수성을 높이고, 각 컨트롤의 역할을 명확히 할 수 있습니다.</p><h4>결론</h4><p>윈도우 폼 개발에서 각 컨트롤이 폼이 닫힐 때 수행해야 할 작업을 자동으로 처리하려면 <code>Closed</code> 메서드를 구현하는 것이 효과적일 수 있습니다. 위에서 소개한 소스 코드를 참고하여, 여러분의 애플리케이션에서 이를 활용해 보세요. 각 컨트롤의 특정 동작을 명확히 정의하고, 코드의 재사용성과 가독성을 높이는 데 도움이 될 것입니다.</p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-07-12T10:54:54+09:00</dc:date>
</item>


<item>
<title>[vb.net] Windows 시스템 오디오 볼륨 가져오기 및 설정</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=260</link>
<description><![CDATA[<div></div><p style="text-align:center;" align="center"><img src="../../../data/editor/2406/d3352cacf9e284a757626685bdad2d54_1717485565_6703.png" title="d3352cacf9e284a757626685bdad2d54_1717485565_6703.png" alt="d3352cacf9e284a757626685bdad2d54_1717485565_6703.png" /> </p><div style="text-align:left;" align="left"><br /></div>



<p> </p>

<div>

<div>

<div>

<div>

<div>

<div>

<blockquote class="se2_quote2" style="margin:0 0 30px 13px;padding:0 8px 0 16px;background:url(&quot;http://static.se2.naver.com/static/img/bg_quote2.gif&quot;) no-repeat 0 3px;color:#888888;"><p><span style="color:rgb(0,0,0);font-size:18pt;"><i>소개</i></span></p></blockquote>

</div>

<div>

<p><span>출처 입력</span></p>

</div>

</div>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<div>

<div>

<p><span style="background-color:#ffffff;color:#222225;">현재 시스템 출력 볼륨을 검색하거나 설정하는 메서드를 제공하는 .NET 클래스가 없습니다. </span></p>

<p><span style="background-color:#ffffff;color:#222225;">이 문서에서는 Windows 멀티미디어 장치 API에 대한 인터페이스를 사용하여 솔루션을 제공합니다.</span></p>

<p> </p>

</div>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<div>

<div>

<div>

<blockquote class="se2_quote2" style="margin:0 0 30px 13px;padding:0 8px 0 16px;background:url(&quot;http://static.se2.naver.com/static/img/bg_quote2.gif&quot;) no-repeat 0 3px;color:#888888;"><p><span style="color:rgb(0,0,0);font-size:18pt;"><i>배경</i></span></p></blockquote></div>

</div>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<div>

<div>

<p><span style="background-color:#ffffff;color:#222225;">이 </span><span style="background-color:#ffffff;color:#222225;">웹 페이지</span><span style="background-color:#ffffff;color:#222225;">에서 이 기사에 대한 아이디어를 얻었습니다. </span></p>

<p><span style="background-color:#ffffff;color:#222225;">VB .NET 또는 C# 소스 코드에 삽입하여 즉시 사용할 수 있도록 조금 다듬었습니다.</span></p><p><span style="background-color:#ffffff;color:#222225;"><br /></span></p>

<p> </p>

</div>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<div>

<div>

<div>

<blockquote class="se2_quote2" style="margin:0 0 30px 13px;padding:0 8px 0 16px;background:url(&quot;http://static.se2.naver.com/static/img/bg_quote2.gif&quot;) no-repeat 0 3px;color:#888888;"><p><span style="color:rgb(0,0,0);font-size:18pt;"><i>코드 사용</i></span></p></blockquote></div>

</div>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<div>

<div>

<p><span style="background-color:#ffffff;color:#222225;">현재 시스템 오디오 볼륨 설정값을 정수(0~100)로 검색하려면 함수를 호출하세요 GetVolume().</span></p>

<p><span style="background-color:#ffffff;color:#222225;">ex)</span></p>

<p><span style="background-color:#ffffff;color:#222225;">Dim currentVolume As Integer = GetVolume()</span></p>

<p> </p>

<p><span style="background-color:#ffffff;color:#222225;">현재 시스템 오디오 볼륨 설정을 새 값(0 - 100)으로 설정하려면 함수를 호출하십시오 SetVolume().</span></p>

<p><span style="background-color:#ffffff;color:#222225;">ex)</span></p>

<p><span style="background-color:#ffffff;color:#222225;">SetVolume(30)</span></p>

<p> </p>

<p><span style="background-color:#ffffff;color:#222225;">다음은 Windows 멀티미디어 API를 호출하여 Windows 시스템 오디오 볼륨을 가져오거나 설정하는 VB.NET 및 C# 메서드의 소스 코드입니다.</span></p>

</div>

</div>

</div>

</div>

</div>

<div>

<div>

<div>

<div>

<div>

<div>

<pre class="vbnet"><code>Option Strict Off

Imports System

Imports System.Runtime.InteropServices



Module WindowsSystemAudio

    &lt;ComImport&gt;

    &lt;Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), _

     InterfaceType(ComInterfaceType.InterfaceIsIUnknown)&gt;

    Private Interface IMMDeviceEnumerator

#Disable Warning IDE1006 ' Naming Styles

        Sub lpVtbl()

#Enable Warning IDE1006 ' Naming Styles

        Function GetDefaultAudioEndpoint(ByVal dataFlow As Integer, _

        ByVal role As Integer, &lt;Out&gt; ByRef ppDevice As IMMDevice) As Integer

    End Interface



    Private NotInheritable Class MMDeviceEnumeratorFactory

        Public Shared Function CreateInstance() As IMMDeviceEnumerator

            Return CType(Activator.CreateInstance_

            (Type.GetTypeFromCLSID(New Guid_

            ("BCDE0395-E52F-467C-8E3D-C4579291692E"))), _

            IMMDeviceEnumerator) ' a MMDeviceEnumerator

        End Function

    End Class



    &lt;Guid("D666063F-1587-4E43-81F1-B948E807363F"), _

     InterfaceType(ComInterfaceType.InterfaceIsIUnknown)&gt;

    Private Interface IMMDevice

        Function Activate(

    &lt;MarshalAs(UnmanagedType.LPStruct)&gt; ByVal iid As Guid, _

     ByVal dwClsCtx As Integer, ByVal pActivationParams As IntPtr, &lt;Out&gt;

    &lt;MarshalAs(UnmanagedType.IUnknown)&gt; ByRef ppInterface As Object) As Integer

    End Interface



    &lt;Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), _

     InterfaceType(ComInterfaceType.InterfaceIsIUnknown)&gt;

    Public Interface IAudioEndpointVolume

        Function RegisterControlChangeNotify(ByVal pNotify As IntPtr) As Integer

        Function UnregisterControlChangeNotify(ByVal pNotify As IntPtr) As Integer

        Function GetChannelCount(ByRef pnChannelCount As UInteger) As Integer

        Function SetMasterVolumeLevel(ByVal fLevelDB As Single, _

        ByVal pguidEventContext As Guid) As Integer

        Function SetMasterVolumeLevelScalar_

        (ByVal fLevel As Single, ByVal pguidEventContext As Guid) As Integer

        Function GetMasterVolumeLevel(ByRef pfLevelDB As Single) As Integer

        Function GetMasterVolumeLevelScalar(ByRef pfLevel As Single) As Integer

    End Interface



    Friend Sub SetVolume(ByVal Level As Integer)

        Try

            Dim deviceEnumerator As IMMDeviceEnumerator = _

                                 MMDeviceEnumeratorFactory.CreateInstance()

            Dim speakers As IMMDevice = Nothing

            Dim res As Integer

            Const eRender = 0

            Const eMultimedia = 1

            deviceEnumerator.GetDefaultAudioEndpoint(eRender, eMultimedia, speakers)

            Dim Audio_EndPointVolume As IAudioEndpointVolume = Nothing

            speakers.Activate(GetType(IAudioEndpointVolume).GUID, 0, _

                              IntPtr.Zero, Audio_EndPointVolume)

            Dim ZeroGuid As New Guid()

            res = Audio_EndPointVolume.SetMasterVolumeLevelScalar_

                  (Level / 100.0F, ZeroGuid)

        Catch ex As Exception

        End Try

    End Sub



    Friend Function GetVolume() As Integer

        Try

            Dim currentLevel As Single = 0 ' Expressed as a decimal value

            Dim deviceEnumerator As IMMDeviceEnumerator = _

                                 MMDeviceEnumeratorFactory.CreateInstance()

            Dim speakers As IMMDevice = Nothing

            Dim res As Integer

            Const eRender = 0

            Const eMultimedia = 1

            deviceEnumerator.GetDefaultAudioEndpoint(eRender, eMultimedia, speakers)

            Dim Audio_EndPointVolume As IAudioEndpointVolume = Nothing

            speakers.Activate(GetType(IAudioEndpointVolume).GUID, _

                              0, IntPtr.Zero, Audio_EndPointVolume)

            res = Audio_EndPointVolume.GetMasterVolumeLevelScalar(currentLevel)

            Return CInt(100 * currentLevel)  ' Returned as an Integer 0 - 100

        Catch ex As Exception

            Return -1

        End Try

    End Function

End Module </code></pre>

</div>

<div> </div>

</div>

</div>

</div>

</div>

</div>

<p> </p>

<div>

<div>

<div>

<div>

<div>

<p> </p>

</div>

</div>

</div>

</div>

</div>

<p> </p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-06-04T16:22:49+09:00</dc:date>
</item>


<item>
<title>[vb.net] Form 전체화면 실행 시 Window작업표시줄 숨기는방법</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=259</link>
<description><![CDATA[<div></div><div style="padding:0 6px;white-space:pre;line-height:130%;">주어진 코드는 윈도우 폼을 사용하여 사용자 지정 닫기 버튼이 있는 풀스크린 애플리케이션을 만드는 예시입니다.<br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><img src="../../../data/editor/2406/d3352cacf9e284a757626685bdad2d54_1717406049_0598.png" title="d3352cacf9e284a757626685bdad2d54_1717406049_0598.png" alt="d3352cacf9e284a757626685bdad2d54_1717406049_0598.png" /><br style="clear:both;" /> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Imports</span> <span style="color:#066de2;">System</span>.Runtime.InteropServices</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;"><span style="color:#a71d5d;">Public</span> <span style="color:#a71d5d;">Class</span> fMain</div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#999999;">' 윈도우 API 함수 선언</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span>DllImport(<span style="color:#63a35c;">"user32.dll"</span>)<span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> Shared Function FindWindow(lpClassName <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>, lpWindowName <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>) <span style="color:#a71d5d;">As</span> IntPtr</div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> Function</div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span>DllImport(<span style="color:#63a35c;">"user32.dll"</span>, SetLastError:<span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span><span style="color:#066de2;">True</span>)<span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> Shared Function SetWindowPos(<span style="color:#a71d5d;">ByVal</span> hWnd <span style="color:#a71d5d;">As</span> IntPtr, <span style="color:#a71d5d;">ByVal</span> hWndInsertAfter <span style="color:#a71d5d;">As</span> IntPtr, <span style="color:#a71d5d;">ByVal</span> X <span style="color:#a71d5d;">As</span> Integer, <span style="color:#a71d5d;">ByVal</span> Y <span style="color:#a71d5d;">As</span> Integer, <span style="color:#a71d5d;">ByVal</span> cx <span style="color:#a71d5d;">As</span> Integer, <span style="color:#a71d5d;">ByVal</span> cy <span style="color:#a71d5d;">As</span> Integer, <span style="color:#a71d5d;">ByVal</span> uFlags <span style="color:#a71d5d;">As</span> SetWindowPosFlags) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Boolean</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> Function</div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#999999;">' SetWindowPos 함수의 플래그 열거형</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span>Flags<span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> Enum SetWindowPosFlags <span style="color:#a71d5d;">As</span> UInteger</div><div style="padding:0px 6px;line-height:130%;">        SynchronousWindowPosition <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H4000</div><div style="padding:0px 6px;line-height:130%;">        DeferErase <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H2000</div><div style="padding:0px 6px;line-height:130%;">        DrawFrame <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H20</div><div style="padding:0px 6px;line-height:130%;">        FrameChanged <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H20</div><div style="padding:0px 6px;line-height:130%;">        HideWindow <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H80</div><div style="padding:0px 6px;line-height:130%;">        DoNotActivate <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H10</div><div style="padding:0px 6px;line-height:130%;">        DoNotCopyBits <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H100</div><div style="padding:0px 6px;line-height:130%;">        IgnoreMove <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H2</div><div style="padding:0px 6px;line-height:130%;">        DoNotChangeOwnerZOrder <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H200</div><div style="padding:0px 6px;line-height:130%;">        DoNotRedraw <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H8</div><div style="padding:0px 6px;line-height:130%;">        DoNotReposition <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H200</div><div style="padding:0px 6px;line-height:130%;">        DoNotSendChangingEvent <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H400</div><div style="padding:0px 6px;line-height:130%;">        IgnoreResize <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H1</div><div style="padding:0px 6px;line-height:130%;">        IgnoreZOrder <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H4</div><div style="padding:0px 6px;line-height:130%;">        ShowWindow <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span>H40</div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> Enum</div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#999999;">' 사용자 지정 닫기 버튼 PictureBox</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> cmd_close <span style="color:#a71d5d;">As</span> PictureBox</div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#999999;">' 폼이 로드될 때 발생하는 이벤트 처리기</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> fMain_Load(sender <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, e <span style="color:#a71d5d;">As</span> EventArgs) <span style="color:#a71d5d;">Handles</span> MyBase.Load</div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#999999;">' 사용자 지정 닫기 버튼 생성</span></div><div style="padding:0px 6px;line-height:130%;">        cmd_close <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">New</span> PictureBox</div><div style="padding:0px 6px;line-height:130%;">        cmd_close.Image <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> My.Resources.ResourceManager.GetObject(<span style="color:#63a35c;">"close"</span>) <span style="color:#999999;">' 리소스에서 이미지 가져오기</span></div><div style="padding:0px 6px;line-height:130%;">        cmd_close.Size <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">New</span> Size(<span style="color:#0099cc;">17</span>, <span style="color:#0099cc;">17</span>) <span style="color:#999999;">' 크기 설정</span></div><div style="padding:0px 6px;line-height:130%;">        cmd_close.SizeMode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> PictureBoxSizeMode.Zoom <span style="color:#999999;">' 이미지 크기 조정 방법 설정</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.Controls.Add(cmd_close) <span style="color:#999999;">' 폼에 PictureBox 추가</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#999999;">' 사용자 지정 닫기 버튼 클릭 이벤트 핸들러 추가</span></div><div style="padding:0px 6px;line-height:130%;">        AddHandler cmd_close.Click, <span style="color:#a71d5d;">Sub</span>(xs <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, xe <span style="color:#a71d5d;">As</span> EventArgs)</div><div style="padding:0px 6px;line-height:130%;">                                        Application.Exit() <span style="color:#999999;">' 애플리케이션 종료</span></div><div style="padding:0px 6px;line-height:130%;">                                    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#999999;">' 폼 설정</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.FormBorderStyle <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> FormBorderStyle.None <span style="color:#999999;">' 테두리 스타일 없음</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> window <span style="color:#a71d5d;">As</span> IntPtr <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> FindWindow(<span style="color:#63a35c;">"Shell_traywnd"</span>, <span style="color:#63a35c;">""</span>) <span style="color:#999999;">' 작업 표시줄 찾기</span></div><div style="padding:0px 6px;line-height:130%;">        SetWindowPos(window, IntPtr.Zero, <span style="color:#0099cc;">0</span>, <span style="color:#0099cc;">0</span>, <span style="color:#0099cc;">0</span>, <span style="color:#0099cc;">0</span>, SetWindowPosFlags.HideWindow) <span style="color:#999999;">' 작업 표시줄 숨기기</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.WindowState <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> FormWindowState.Maximized <span style="color:#999999;">' 최대화</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.TopMost <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">True</span> <span style="color:#999999;">' 항상 위에 표시</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#999999;">' 폼이 Dispose될 때 발생하는 이벤트 처리기</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> MyBase_Disposed(sender <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, e <span style="color:#a71d5d;">As</span> EventArgs) <span style="color:#a71d5d;">Handles</span> <span style="color:#a71d5d;">Me</span>.Disposed</div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> window <span style="color:#a71d5d;">As</span> IntPtr <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> FindWindow(<span style="color:#63a35c;">"Shell_traywnd"</span>, <span style="color:#63a35c;">""</span>) <span style="color:#999999;">' 작업 표시줄 찾기</span></div><div style="padding:0px 6px;line-height:130%;">        SetWindowPos(window, IntPtr.Zero, <span style="color:#0099cc;">0</span>, <span style="color:#0099cc;">0</span>, <span style="color:#0099cc;">0</span>, <span style="color:#0099cc;">0</span>, SetWindowPosFlags.ShowWindow) <span style="color:#999999;">' 작업 표시줄 다시 표시</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#999999;">' 폼 크기 조정 이벤트 처리기</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> fMain_Resize(sender <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, e <span style="color:#a71d5d;">As</span> EventArgs) <span style="color:#a71d5d;">Handles</span> <span style="color:#a71d5d;">Me</span>.Resize</div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> S <span style="color:#a71d5d;">As</span> Size <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#a71d5d;">Me</span>.ClientRectangle.Size <span style="color:#999999;">' 클라이언트 영역 크기 가져오기</span></div><div style="padding:0px 6px;line-height:130%;">        <span style="color:#a71d5d;">If</span> cmd_close IsNot <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> cmd_close.Location <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">New</span> Point(S.Width <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> cmd_close.Width <span style="color:#0086b3;"></span><span style="color:#a71d5d;">-</span> <span style="color:#0099cc;">15</span>, <span style="color:#0099cc;">15</span>) <span style="color:#999999;">' 사용자 지정 닫기 버튼 위치 설정</span></div><div style="padding:0px 6px;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0px 6px;line-height:130%;"> </div><div style="padding:0px 6px;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Class</span></div><div style="padding:0px 6px;line-height:130%;"> </div>

</div><div style="padding:0 6px;white-space:pre;line-height:130%;">위 코드에서는 <code>FindWindow</code> 및 <code>SetWindowPos</code>와 같은 윈도우 API 함수를 사용하여 작업 표시줄을 숨기거나 표시합니다. </div><div style="padding:0 6px;white-space:pre;line-height:130%;">사용자 지정 닫기 버튼을 클릭하면 애플리케이션이 종료됩니다. 폼이 로드되면 작업 표시줄이 숨겨지고, 폼이 닫힐 때 작업 표시줄이 다시 표시됩니다. </div><div style="padding:0 6px;white-space:pre;line-height:130%;">사용자 지정 닫기 버튼은 폼의 우측 상단에 표시됩니다.<br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><br /></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-06-03T18:15:25+09:00</dc:date>
</item>


<item>
<title>[VB.NET] 무명 함수(Anonymous Function), 람다 함수(Lambda Function): 코드 작성을 더욱 효율적으로 만드는 무기</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=258</link>
<description><![CDATA[<div></div><div class="se-component se-text se-l-default" style="margin:0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">람다 함수는 매우 유연하고 간결하며 간편한 방법으로 코드를 작성할 수 있도록 해줍니다.</span></p></div></div></div></div><div class="se-component se-image se-l-default" style="margin:20px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content se-component-content-fit" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-image se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-image" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><a class="se-module-image-link __se_image_link __se_link" style="color:inherit;margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"></a><div style="text-align:left;" align="left"><a class="se-module-image-link __se_image_link __se_link" style="color:inherit;margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"></a><a class="se-module-image-link __se_image_link __se_link" style="font:inherit;color:inherit;margin:0px;padding:0px;border:0px;vertical-align:baseline;"></a><div style="text-align:center;" align="center"><a class="se-module-image-link __se_image_link __se_link" style="font:inherit;color:inherit;margin:0px;padding:0px;border:0px;vertical-align:baseline;"></a><a class="se-module-image-link __se_image_link __se_link" style="font:inherit;color:inherit;margin:0px;padding:0px;border:0px;vertical-align:baseline;"><img src="../../../data/editor/2405/04039d03940a53e40cdf770e62802906_1715144156_9659.png" title="04039d03940a53e40cdf770e62802906_1715144156_9659.png" alt="04039d03940a53e40cdf770e62802906_1715144156_9659.png" /></a></div></div><img src="https://postfiles.pstatic.net/MjAyNDA1MDhfMjgw/MDAxNzE1MTQzODM5MzIy.VaHRLUhpcASDTneZFBO7mMZx82Ie0_K9YxC8-TBrTOMg.nyNavmfGMgi2C-2-YjF5RxkLkJq1Br5_0bNj6mLAzoUg.PNG/image.png?type=w580" alt="" class="se-image-resource egjs-visible" style="text-align:left;border:0px;margin:0px;padding:0px;font:inherit;vertical-align:baseline;width:528px;" /></div></div></div></div><div class="se-component se-quotation se-l-default" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-quotation se-l-default" style="margin:0px auto;padding:10px 0px;border:0px;font:inherit;vertical-align:baseline;"><blockquote class="se-quotation-container" style="margin:auto;padding:31px 0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text se-quote" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">소개:</span><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;"> 람다 함수는 현대 프로그래밍에서 매우 중요한 역할을 하고 있습니다. 그것은 익명 함수로, 코드를 더 간결하고 유연하게 만들어줍니다. 이번 포스트에서는 람다 함수의 개념과 사용 사례에 대해 자세히 알아보겠습니다.</span></p></div></blockquote></div></div></div><div class="ssp-adcontent align_center" style="margin:30px 40px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="ssp_adcontent_inner" style="margin:0px auto;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:500px;"><div style="text-align:left;margin:0px auto;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:inherit;line-height:0;font-family:inherit;vertical-align:baseline;width:500px;height:auto;" align="left"><iframe scrolling="no" title="AD" style="margin:0px;padding:0px;border-width:0px;font:inherit;vertical-align:bottom;width:500px;height:0px;"></iframe></div></div></div><div class="se-component se-image se-l-default" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content se-component-content-fit" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-image se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-image" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><a class="se-module-image-link __se_image_link __se_link" style="color:inherit;margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><img src="https://postfiles.pstatic.net/MjAyNDA1MDhfMTU5/MDAxNzE1MTQzODY2MjQz.jZo8D2p06pm825JT2fPgSqIDpdf1Dfh8fmDmaB-_UF4g.FGrvr7Lb9gYVBXJpbdmHMTdJwxFYSxy56KHg5hSoj78g.PNG/image.png?type=w580" alt="" class="se-image-resource egjs-visible" style="text-align:left;border:0px;margin:0px;padding:0px;font:inherit;vertical-align:baseline;width:528px;" /></a><div style="text-align:left;"><a class="se-module-image-link __se_image_link __se_link" style="color:inherit;margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"></a><a class="se-module-image-link __se_image_link __se_link" style="font:inherit;color:inherit;margin:0px;padding:0px;border:0px;vertical-align:baseline;"></a><div style="text-align:center;" align="center"><a class="se-module-image-link __se_image_link __se_link" style="font:inherit;color:inherit;margin:0px;padding:0px;border:0px;vertical-align:baseline;"></a><a class="se-module-image-link __se_image_link __se_link" style="font:inherit;color:inherit;margin:0px;padding:0px;border:0px;vertical-align:baseline;"><img src="../../../data/editor/2405/04039d03940a53e40cdf770e62802906_1715144169_4322.png" title="04039d03940a53e40cdf770e62802906_1715144169_4322.png" alt="04039d03940a53e40cdf770e62802906_1715144169_4322.png" /></a></div></div></div></div></div></div><div class="se-component se-text se-l-default" style="margin:20px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs24 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">1. 람다 함수란?</span></span></p><ul class="se-text-list se-text-list-type-bullet-disc" style="margin:0px 0px 0px -14px;padding:0px 0px 0px 30px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:17px;line-height:inherit;font-family:inherit;vertical-align:baseline;"><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">람다 함수는 익명 함수로, 함수를 정의하고 사용하는 동시에 코드 안에서 직접 정의됩니다. 이는 함수를 명시적으로 정의하지 않고도 간단하고 짧은 코드 조각을 생성할 수 있도록 해줍니다. 람다 함수의 기본 구조는 다음과 같습니다:</span></p></li></ul></div></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="text-align:left;margin:0px;padding:0px;font:inherit;border-width:1px 0px 0px 1px;border-style:solid;border-color:rgb(210,210,210);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="3" rowspan="1" style="margin:0px;padding:10px;border-width:0px 1px 1px 0px;border-style:solid;border-color:rgb(210,210,210);font:inherit;vertical-align:middle;background-color:transparent;max-width:0px;width:527px;height:39px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">Function(parameters) expression</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-text se-l-default" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">예를 들어, </span></span><span class="se-fs-fs13 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:13px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">(x, y) =&gt; x + y</span></span><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">는 두 개의 매개변수를 더하는 람다 함수를 나타냅니다.</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">​</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs24 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">2. 람다 함수의 구문과 사용 방법</span></span></p><ul class="se-text-list se-text-list-type-bullet-disc" style="margin:0px 0px 0px -14px;padding:0px 0px 0px 30px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:17px;line-height:inherit;font-family:inherit;vertical-align:baseline;"><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">람다 함수는 주로 델리게이트(Delegate)나 LINQ 쿼리, 함수형 프로그래밍 등에서 사용됩니다. 예를 들어, 리스트의 각 요소를 제곱하는 간단한 람다 함수는 다음과 같습니다:</span></p></li><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">​</span></p></li></ul><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">​</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs24 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">3. 람다 함수의 주요 활용 사례</span></span></p><ul class="se-text-list se-text-list-type-bullet-disc" style="margin:0px 0px 0px -14px;padding:0px 0px 0px 30px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:17px;line-height:inherit;font-family:inherit;vertical-align:baseline;"><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">정렬(Sorting), 필터링(Filtering), 매핑(Mapping) 등 데이터 처리 작업에서의 활용</span></p></li><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">LINQ 쿼리에서의 람다 함수 사용</span></p></li><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">이벤트 핸들러 등에서의 람다 함수 활용</span></p></li></ul><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">​</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs24 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">4. 람다 함수의 장단점</span></span></p><ul class="se-text-list se-text-list-type-bullet-disc" style="margin:0px 0px 0px -14px;padding:0px 0px 0px 30px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:17px;line-height:inherit;font-family:inherit;vertical-align:baseline;"><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">장점: 코드의 간결성, 유연성, 가독성 향상</span></p></li><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">단점: 복잡한 람다 함수의 가독성 저하와 디버깅의 어려움</span></p></li></ul><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(194,194,194);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">람다 함수의 주요 장점은 코드의 간결성과 가독성을 향상시키는 것입니다. 그러나 복잡한 람다 함수는 가독성이 저하될 수 있고, 디버깅이 어려울 수 있습니다.</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">​</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs24 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">5. 람다 함수의 사용 지침과 Best Practices</span></span></p><ul class="se-text-list se-text-list-type-bullet-disc" style="margin:0px 0px 0px -14px;padding:0px 0px 0px 30px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:17px;line-height:inherit;font-family:inherit;vertical-align:baseline;"><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">가독성을 위한 람다 함수 사용 지침</span></p></li><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">긴 람다 함수의 경우 메서드 추출을 통한 리팩토링 고려 사항</span></p></li></ul><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">​</span></span></p><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs24 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:24px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);"><span style="font-weight:700;background-color:inherit;font-family:inherit;">6. 결론</span></span></p><ul class="se-text-list se-text-list-type-bullet-disc" style="margin:0px 0px 0px -14px;padding:0px 0px 0px 30px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:17px;line-height:inherit;font-family:inherit;vertical-align:baseline;"><li class="se-text-list-item" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;list-style-type:inherit;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">람다 함수는 코드 작성을 더욱 효율적으로 만들어주는 강력한 도구입니다. 그것을 잘 활용하면 코드의 가독성과 유연성을 향상시킬 수 있으며, 프로그래밍 생산성에 기여할 수 있습니다.</span></p></li></ul><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:center;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="center"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">​<img src="../../../data/editor/2405/04039d03940a53e40cdf770e62802906_1715144181_3205.png" title="04039d03940a53e40cdf770e62802906_1715144181_3205.png" alt="04039d03940a53e40cdf770e62802906_1715144181_3205.png" /></span></p></div></div></div></div><div class="ssp-adcontent align_center" style="margin:30px 40px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="ssp_adcontent_inner" style="margin:0px auto;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:500px;"><div style="text-align:left;margin:0px auto;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:inherit;line-height:0;font-family:inherit;vertical-align:baseline;width:500px;height:auto;" align="left"><iframe scrolling="no" title="AD" style="margin:0px;padding:0px;border-width:0px;font:inherit;vertical-align:bottom;width:500px;height:0px;"></iframe></div></div></div><div class="se-component se-image se-l-default" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content se-component-content-fit" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-image se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-image" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><a class="se-module-image-link __se_image_link __se_link" style="color:inherit;margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><img src="https://postfiles.pstatic.net/MjAyNDA1MDhfNDgg/MDAxNzE1MTQzODgxNTI2.7lQCoIJAD0ueKdpP0zYHHysoOlyC70YljLdhzOBBvSQg.j1m7lgyKzeRbSlG4K56Do3f262Hk4J4pu7gcEdpFNkMg.PNG/image.png?type=w580" alt="" class="se-image-resource egjs-visible" style="text-align:left;border:0px;margin:0px;padding:0px;font:inherit;vertical-align:baseline;width:528px;" /></a></div></div></div></div><div class="se-component se-quotation se-l-default" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-quotation se-l-default" style="margin:0px auto;padding:10px 0px;border:0px;font:inherit;vertical-align:baseline;"><blockquote class="se-quotation-container" style="margin:auto;padding:31px 0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text se-quote" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">1. 정렬(Sorting)</span><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">:</span></p></div></blockquote></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="text-align:left;margin:0px;padding:0px;font:inherit;border:1px solid rgb(204,204,204);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="1" rowspan="1" style="margin:0px;padding:10px;border:1px solid rgb(204,204,204);font:inherit;vertical-align:middle;max-width:0px;width:526px;height:8px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">New</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) From {</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">5</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">8</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">1</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">9</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">}</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">numbers.Sort(Function(x, y) x.CompareTo(y))</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-quotation se-l-default" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-quotation se-l-default" style="margin:0px auto;padding:10px 0px;border:0px;font:inherit;vertical-align:baseline;"><blockquote class="se-quotation-container" style="margin:auto;padding:31px 0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text se-quote" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">2. 필터링(Filtering)</span><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">:</span></p></div></blockquote></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="text-align:left;margin:0px;padding:0px;font:inherit;border:1px solid rgb(204,204,204);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="1" rowspan="1" style="margin:0px;padding:10px;border-top:none;border-right:none;border-bottom:1px solid rgb(204,204,204);border-left:1px solid rgb(204,204,204);font:inherit;vertical-align:middle;max-width:0px;width:526px;height:2px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">New</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) From {</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">5</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">8</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">1</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">9</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">}</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.41818;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> evenNumbers </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers.Where(Function(x) x Mod </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">0</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">).ToList()</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-quotation se-l-default" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-quotation se-l-default" style="margin:0px auto;padding:10px 0px;border:0px;font:inherit;vertical-align:baseline;"><blockquote class="se-quotation-container" style="margin:auto;padding:31px 0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text se-quote" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">3. 객체 매핑(Object Mapping)</span><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">:</span></p></div></blockquote></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="text-align:left;margin:0px;padding:0px;font:inherit;border:1px solid rgb(204,204,204);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="1" rowspan="1" style="margin:0px;padding:10px;border-top:none;border-right:none;border-bottom:1px solid rgb(204,204,204);border-left:1px solid rgb(204,204,204);font:inherit;vertical-align:middle;max-width:0px;width:526px;height:17px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> names </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">) </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">New</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">) From {</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"Alice"</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"Bob"</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"Charlie"</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">}</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.41818;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> nameLengths </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> names.Select(Function(name) name.Length).ToList()</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-quotation se-l-default" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-quotation se-l-default" style="margin:0px auto;padding:10px 0px;border:0px;font:inherit;vertical-align:baseline;"><blockquote class="se-quotation-container" style="margin:auto;padding:31px 0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text se-quote" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">4. 사전 정의된 동작(Predefined Actions)</span><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">:</span></p></div></blockquote></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="text-align:left;margin:0px;padding:0px;font:inherit;border:1px solid rgb(204,204,204);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="1" rowspan="1" style="margin:0px;padding:10px;border:1px solid rgb(204,204,204);font:inherit;vertical-align:middle;max-width:0px;width:526px;height:40px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">New</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) From {</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">5</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">8</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">1</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">9</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">}</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.41818;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> sum </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers.Aggregate(Function(acc, x) acc </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">+</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> x)</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-quotation se-l-default" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-quotation se-l-default" style="margin:0px auto;padding:10px 0px;border:0px;font:inherit;vertical-align:baseline;"><blockquote class="se-quotation-container" style="margin:auto;padding:31px 0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text se-quote" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:left;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="left"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">5. 조건부 작업(Conditional Operations)</span><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:italic;font-variant:inherit;font-weight:inherit;font-size:19px;font-family:'se-nanummyeongjo', arial, '나눔명조', nanummyeongjo, serif, simsun;vertical-align:baseline;">:</span></p></div></blockquote></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:40px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="text-align:left;margin:0px;padding:0px;font:inherit;border:1px solid rgb(204,204,204);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="1" rowspan="1" style="margin:0px;padding:10px;border:1px solid rgb(204,204,204);font:inherit;vertical-align:middle;max-width:0px;width:526px;height:40px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">New</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> List(Of Integer) From {</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">5</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">8</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">1</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">, </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">9</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">}</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.41818;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> max </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> numbers.Max(Function(x, y) </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">If</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);">(x </span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&gt;</span><span class="se-fs-fs11 se-ff-system" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,0,0);"> y, x, y))</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-image se-l-default" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content se-component-content-fit" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-image se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-image" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><a class="se-module-image-link __se_image_link __se_link" style="color:inherit;margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><img src="https://postfiles.pstatic.net/MjAyNDA1MDhfMTI1/MDAxNzE1MTQzOTA3NDI1.S_KqkR5G9TtE3YeRn1Xx98iveMpwjrzTP9AY8kiWHgkg.LmAM_-Et9TIG5HffOXKAvWCMi3QG0oY2aSyqzWZMow4g.PNG/image.png?type=w580" alt="" class="se-image-resource egjs-visible" style="text-align:left;border:0px;margin:0px;padding:0px;font:inherit;vertical-align:baseline;width:528px;" /></a></div></div></div></div><div class="se-component se-text se-l-default" style="margin:20px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="text-align:center;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;" align="center"><span class="se-fs-fs16 se-ff-system se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', helvetica, AppleSDGothicNeo, arial, 'malgun gothic', '맑은  고딕', sans-serif, Meiryo;vertical-align:baseline;color:rgb(13,13,13);">​<img src="../../../data/editor/2405/04039d03940a53e40cdf770e62802906_1715144191_3536.png" title="04039d03940a53e40cdf770e62802906_1715144191_3536.png" alt="04039d03940a53e40cdf770e62802906_1715144191_3536.png" /></span></p></div></div></div></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-05-08T13:58:25+09:00</dc:date>
</item>


<item>
<title>[VB.NET] 컨트롤 삭제 여부 확인하는 방법</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=257</link>
<description><![CDATA[<div></div><p><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">컨트롤이 삭제되었는지 확인하기 위해서는 해당 컨트롤이 유효한지 확인해야 합니다. 이를 위해 다음과 같은 VB.NET 코드를 사용할 수 있습니다.</span><br /></p><p><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></span></p><div style="padding:0 6px;white-space:pre;line-height:130%;">Module ControlExtensions</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span>Extension()<span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Public</span> Function IsDisposed(<span style="color:#a71d5d;">ByVal</span> control <span style="color:#a71d5d;">As</span> Control) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Boolean</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> control Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">Then</span> <span style="color:#a71d5d;">Return</span> <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> control.Disposing <span style="color:#a71d5d;">OrElse</span> control.IsDisposed <span style="color:#a71d5d;">Then</span> <span style="color:#a71d5d;">Return</span> <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Dim</span> parent <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> control.Parent</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        While parent IsNot <span style="color:#066de2;">Nothing</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">If</span> parent.Disposing <span style="color:#a71d5d;">OrElse</span> parent.IsDisposed <span style="color:#a71d5d;">Then</span> <span style="color:#a71d5d;">Return</span> <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            parent <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> parent.Parent</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">End</span> While</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Return</span> <span style="color:#066de2;">False</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Module</div><p><br /></p><p><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">이 확장 메서드를 사용하여 특정 컨트롤이 삭제되었는지 확인할 수 있습니다. 아래는 예제 코드입니다.</span><br /></p><p><br /></p><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#999999;">' 사용 예제</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">If</span> myControl.IsDisposed() <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#999999;">' 컨트롤이 삭제되었음을 처리</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Else</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#999999;">' 컨트롤이 여전히 존재함을 처리</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><p><br /></p><p><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">위의 예제 코드에서 </span><code style="border:0px solid rgb(227,227,227);font-size:0.875em;color:rgb(13,13,13);font-weight:600;background-color:rgb(255,255,255);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;">myControl</code><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">은 삭제 여부를 확인하려는 컨트롤입니다. 이 코드는 컨트롤이 삭제되었으면 True를 반환하고, 그렇지 않으면 False를 반환합니다.</span><br /></p><p><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></span></p><p><font color="#0d0d0d" face="Söhne, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, Helvetica Neue, Arial, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji"><span style="font-size:16px;background-color:rgb(255,255,255);">example:)</span></font></p><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">If</span> myControl Is <span style="color:#066de2;">Nothing</span> <span style="color:#a71d5d;">OrElse</span> myControl.IsDisposed <span style="color:#a71d5d;">Then</span> myControl <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">New</span> TextBox</div><p><br /></p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-05-08T13:22:03+09:00</dc:date>
</item>


<item>
<title>VB.NET에서 System.Reflection을 이용한 동적 DLL 사용하기: 예제와 설명</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=256</link>
<description><![CDATA[<div></div><div><div><div><div><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:10pt;background-color:rgb(255,255,255);">VB.NET에서 동적 DLL을 사용하는 방법은 매우 유용합니다. 동적 DLL은 프로그램 실행 중에 로드되어 사용되며, 라이브러리의 업데이트나 유지 관리를 용이하게 합니다. 아래 예제를 통해 VB.NET에서 동적 DLL을 사용하는 방법을 자세히 살펴보겠습니다.</span><span style="font-family:'나눔고딕', NanumGothic, '돋움';"><br /></span></div><div><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"> </span></div></div></div></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">Imports</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">System</span><span style="font-size:10pt;">.Runtime.InteropServices</span></div><div><div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">Module MainModule</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 함수의 프로토타입 정의</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&lt;</span><span style="font-size:10pt;">DllImport(</span><span style="color:rgb(99,163,92);font-size:10pt;">"example.dll"</span><span style="font-size:10pt;">, CallingConvention:</span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;">CallingConvention.Cdecl)</span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&gt;</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">Public</span><span style="font-size:10pt;"> Function Add(</span><span style="color:rgb(167,29,93);font-size:10pt;">ByVal</span><span style="font-size:10pt;"> a </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer, </span><span style="color:rgb(167,29,93);font-size:10pt;">ByVal</span><span style="font-size:10pt;"> b </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer) </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> Function</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">Sub</span><span style="font-size:10pt;"> Main()</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 함수 호출</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> result </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> Add(</span><span style="color:rgb(0,153,204);font-size:10pt;">5</span><span style="font-size:10pt;">, </span><span style="color:rgb(0,153,204);font-size:10pt;">3</span><span style="font-size:10pt;">)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">        Console.WriteLine(</span><span style="color:rgb(99,163,92);font-size:10pt;">"결과: "</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> result)</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> Module</span></div></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">위 코드는 "example.dll"이라는 DLL을 동적으로 호출하여 두 숫자를 더하는 간단한 예제입니다. </span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">이를 실행하면 DLL의 함수를 성공적으로 호출하여 결과를 출력할 것입니다.</span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">이 예제를 통해 VB.NET에서 동적 DLL을 사용하는 기본적인 방법을 이해할 수 있습니다. </span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">동적 DLL을 사용하면 프로그램의 유연성을 높일 수 있으며, 여러 라이브러리를 효율적으로 관리할 수 있습니다.</span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">이런식으로 우리는 Windows API라고 많이 알고 사용하는 방식 중 하나입니다.</span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></p><blockquote class="se2_quote2" style="margin:0 0 30px 13px;padding:0 8px 0 16px;background:url(&quot;http://static.se2.naver.com/static/img/bg_quote2.gif&quot;) no-repeat 0 3px;color:#888888;"><span style="font-size:10pt;">System.Reflection을 이용한 동적 DLL 사용 </span></blockquote><p style="margin-top:1.25em;border:0px solid rgb(227,227,227);color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">VB.NET에서 System.Reflection 네임스페이스를 활용하여 동적 DLL을 사용하는 방법은 유연하고 강력한 방법입니다. </span></p><p style="margin-top:1.25em;border:0px solid rgb(227,227,227);color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">이를 통해 실행 중에 DLL을 로드하고 메서드를 호출할 수 있습니다. </span></p><p style="margin-top:1.25em;border:0px solid rgb(227,227,227);color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">아래 예제를 통해 VB.NET에서 System.Reflection을 이용한 동적 DLL 사용하는 방법을 자세히 알아보겠습니다.</span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></p><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Imports</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">System</span></p><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">Namespace</span><span style="font-size:10pt;"> ExampleNamespace</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">Public</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Class</span><span style="font-size:10pt;"> ExampleClass</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Public</span><span style="font-size:10pt;"> Function Add(</span><span style="color:rgb(167,29,93);font-size:10pt;">ByVal</span><span style="font-size:10pt;"> a </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer, </span><span style="color:rgb(167,29,93);font-size:10pt;">ByVal</span><span style="font-size:10pt;"> b </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer) </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">            </span><span style="color:rgb(167,29,93);font-size:10pt;">Return</span><span style="font-size:10pt;"> a </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">+</span><span style="font-size:10pt;"> b</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> Function</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Class</span></div><div style="padding:0px 6px;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Namespace</span></div></td></tr></tbody></table><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">위 코드를 </span><code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-weight:600;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"><span style="font-size:10pt;">ExampleClass.vb</span></code><span style="font-size:10pt;"> 파일로 저장하세요. 그리고 다음 명령어를 사용하여 컴파일하여 </span><code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-weight:600;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"><span style="font-size:10pt;">example.dll</span></code><span style="font-size:10pt;">을 생성할 수 있습니다.</span></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">이제 </span><code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-weight:600;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"><span style="font-size:10pt;">example.dll</span></code><span style="font-size:10pt;">이 준비되었습니다. 이제 VB.NET 코드에서 이 DLL을 사용하는 방법을 보여줄게요.</span><br /></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></p><div style="padding:0px 6px;line-height:130%;"><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Imports</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">System</span><span style="font-size:10pt;">.Reflection</span></p><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">Module MainModule</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">Sub</span><span style="font-size:10pt;"> Main()</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 파일 경로 설정</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> dllPath </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">String</span><span style="font-size:10pt;"> </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">"C:\path\to\your\example.dll"</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 파일 로드</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> assembly </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Assembly </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> Assembly.LoadFrom(dllPath)</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 내의 클래스 및 메서드 정보 가져오기</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> className </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">String</span><span style="font-size:10pt;"> </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">"ExampleNamespace.ExampleClass"</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> methodName </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">String</span><span style="font-size:10pt;"> </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">"Add"</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> type </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Type </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> assembly.GetType(className)</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> methodInfo </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> MethodInfo </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> type.GetMethod(methodName)</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' 메서드 호출</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> instance </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">Object</span><span style="font-size:10pt;"> </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> Activator.CreateInstance(type)</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> result </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">CType</span><span style="font-size:10pt;">(methodInfo.Invoke(instance, </span><span style="color:rgb(6,109,226);font-size:10pt;">New</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">Object</span><span style="font-size:10pt;">() {</span><span style="color:rgb(0,153,204);font-size:10pt;">5</span><span style="font-size:10pt;">, </span><span style="color:rgb(0,153,204);font-size:10pt;">3</span><span style="font-size:10pt;">}), Integer)</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' 결과 출력</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">        Console.WriteLine(</span><span style="color:rgb(99,163,92);font-size:10pt;">"결과: "</span><span style="font-size:10pt;"> </span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> result)</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Sub</span></div><div style="padding:0px 6px;line-height:15.6px;"><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> Module</span></div></td></tr></tbody></table><br /></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-size:10pt;">위 코드를 실행하면, </span><code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-weight:600;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"><span style="font-size:10pt;">example.dll</span></code><span style="font-size:10pt;">을 동적으로 호출하여 두 숫자를 더하는 결과를 출력할 수 있습니다.</span>

</p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></p></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:10pt;letter-spacing:-0.3px;white-space:normal;background-color:rgb(255,255,255);">다음으로 관련하여 예제를 하나 더 설명드리겠습니다.</span><br /></div><div><span style="font-family:'나눔고딕', NanumGothic, '돋움';font-size:10pt;"> </span></div></div><div><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:10pt;background-color:rgb(255,255,255);">아래는 DLL을 만들기 위한 예제 코드와, 해당 DLL을 사용하는 VB.NET 코드입니다.</span><span style="font-family:'나눔고딕', NanumGothic, '돋움';"> </span></div><div><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></span></div><div><span style="border:0px solid rgb(227,227,227);font-weight:600;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:10pt;background-color:rgb(255,255,255);">DLL 만들기 (ExampleClass.vb):</span><span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"> </span></div><div><span style="border:0px solid rgb(227,227,227);font-weight:600;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"></span><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Public</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Class</span><span style="font-size:10pt;"> ExampleClass</span></p><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">Public</span><span style="font-size:10pt;"> Shared Function Add(</span><span style="color:rgb(167,29,93);font-size:10pt;">ByVal</span><span style="font-size:10pt;"> a </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer, </span><span style="color:rgb(167,29,93);font-size:10pt;">ByVal</span><span style="font-size:10pt;"> b </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer) </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        MsgBox(a.ToString() </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">" + "</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> b.ToString() </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">" = "</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> (a </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">+</span><span style="font-size:10pt;"> b).ToString())</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Return</span><span style="font-size:10pt;"> a </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">+</span><span style="font-size:10pt;"> b</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> Function</span></div><div style="padding:0px 6px;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Class</span></div></td></tr></tbody></table><p><br /></p><p><span style="border:0px solid rgb(227,227,227);font-size:10pt;">DLL을 사용하는 VB.NET 코드:</span><br /></p><p><span style="border:0px solid rgb(227,227,227);"></span></p><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p><span style="font-size:10pt;"> </span></p><div style="padding:0px 6px;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">Imports</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">System</span><span style="font-size:10pt;">.Reflection</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">Module MainModule</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">Sub</span><span style="font-size:10pt;"> Main()</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 파일 경로 설정</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> dllPath </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">String</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">"DLL의_경로\example.dll"</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 파일 로드</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> assembly </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Assembly </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> Assembly.LoadFile(dllPath)</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' DLL 내의 클래스 및 메서드 정보 가져오기</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> className </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">String</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">"루트네임스페이스.ExampleClass"</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> methodName </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">String</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> </span><span style="color:rgb(99,163,92);font-size:10pt;">"Add"</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> type </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Type </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> assembly.GetType(className)</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> methodInfo </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> MethodInfo </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> type.GetMethod(methodName)</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' 메서드 호출</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(167,29,93);font-size:10pt;">Dim</span><span style="font-size:10pt;"> returnValue </span><span style="color:rgb(167,29,93);font-size:10pt;">As</span><span style="font-size:10pt;"> Integer </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">=</span><span style="font-size:10pt;"> DirectCast(methodInfo.Invoke(</span><span style="color:rgb(6,109,226);font-size:10pt;">Nothing</span><span style="font-size:10pt;">, </span><span style="color:rgb(6,109,226);font-size:10pt;">New</span><span style="font-size:10pt;"> </span><span style="color:rgb(6,109,226);font-size:10pt;">Object</span><span style="font-size:10pt;">() {</span><span style="color:rgb(0,153,204);font-size:10pt;">5</span><span style="font-size:10pt;">, </span><span style="color:rgb(0,153,204);font-size:10pt;">3</span><span style="font-size:10pt;">}), Integer)</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;"> </span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        </span><span style="color:rgb(153,153,153);font-size:10pt;">' 결과 출력</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">        Console.WriteLine(</span><span style="color:rgb(99,163,92);font-size:10pt;">"결과: "</span><span style="font-size:10pt;"> </span><span style="color:#0086b3;"></span><span style="color:rgb(167,29,93);font-size:10pt;">&amp;</span><span style="font-size:10pt;"> returnValue.ToString())</span></div><div style="padding:0px 6px;line-height:130%;"><span style="font-size:10pt;">    </span><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> </span><span style="color:rgb(167,29,93);font-size:10pt;">Sub</span></div><div style="padding:0px 6px;line-height:130%;"><span style="color:rgb(167,29,93);font-size:10pt;">End</span><span style="font-size:10pt;"> Module</span></div></td></tr></tbody></table><p><span style="border:0px solid rgb(227,227,227);"><br /></span></p><p><span style="border:0px solid rgb(227,227,227);font-weight:600;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><span style="font-weight:400;font-size:10pt;">위 코드를 실행하면, </span><code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"><span style="font-size:10pt;">example.dll</span></code><span style="font-weight:400;font-size:10pt;">을 동적으로 호출하여 두 숫자를 더하는 결과를 출력할 수 있습니다.</span> </span></p></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-04-25T12:14:59+09:00</dc:date>
</item>


<item>
<title>VB.NET 마스터하기: 효율적인 Extension 메서드 사용법</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=255</link>
<description><![CDATA[<div></div><div>







<p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><img src="../../../data/editor/2404/6f0a85100beff04e7bc0dcecb3f291e7_1713335803_0266.jpg" title="6f0a85100beff04e7bc0dcecb3f291e7_1713335803_0266.jpg" alt="6f0a85100beff04e7bc0dcecb3f291e7_1713335803_0266.jpg" /></p><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br style="clear:both;" />VB.NET에서의 Extension 메서드는 기존 타입에 새로운 메서드를 추가하고자 할 때 유용하게 사용할 수 있는 기능입니다. 이를 통해 기존의 클래스, 구조체, 인터페이스 등에 새로운 기능을 추가할 수 있으며, 원본 소스 코드를 변경하지 않고도 기능을 확장할 수 있습니다.</p><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">Extension 메서드 정의하는 방법</h3><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">VB.NET에서 Extension 메서드를 정의하려면 다음과 같은 절차를 따릅니다:</p><ol style="border:0px solid rgb(227,227,227);margin:0px;padding:0px 0px 1rem 1.25rem;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><span style="border:0px solid rgb(227,227,227);font-weight:600;margin-top:1.25em;">모듈 선언</span>: Extension 메서드는 모듈 내에 정의되어야 합니다. 모듈은 일반적으로 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-bottom:1.25em;">Module</code> 키워드를 사용하여 선언합니다.</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><span style="border:0px solid rgb(227,227,227);font-weight:600;margin-top:1.25em;"><code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;">&lt;Extension()&gt;</code> 속성 사용</span>: 메서드 앞에 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-bottom:1.25em;">&lt;Extension()&gt;</code> 속성을 명시하여 이 메서드가 Extension 메서드임을 나타냅니다.</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><span style="border:0px solid rgb(227,227,227);font-weight:600;margin-top:1.25em;margin-bottom:1.25em;">첫 번째 파라미터는 <code style="border:0px solid rgb(227,227,227);font-size:0.875em;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;">ByVal</code> 이어야 하며, 확장하고자 하는 타입을 정의합니다</span>: 이 파라미터는 Extension 메서드가 적용될 타입의 인스턴스를 참조합니다.</li></ol><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">예제: String 타입에 메서드 추가하기</h3><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">다음은 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">String</code> 타입에 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">IsFirstLetterUpperCase</code>라는 Extension 메서드를 추가하는 예제입니다:</p><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p> <span style="white-space:pre;color:rgb(167,29,93);">Imports</span><span style="white-space:pre;"> </span><span style="white-space:pre;color:rgb(6,109,226);">System</span><span style="white-space:pre;">.Runtime.CompilerServices</span></p><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">Module StringExtensions</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&lt;</span>Extension()<span style="color:#0086b3;"></span><span style="color:#a71d5d;">&gt;</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Public</span> Function IsFirstLetterUpperCase(<span style="color:#a71d5d;">ByVal</span> s <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">String</span>) <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Boolean</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> <span style="color:#066de2;">String</span>.IsNullOrEmpty(s) <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">            <span style="color:#a71d5d;">Return</span> <span style="color:#066de2;">False</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Return</span> Char.IsUpper(s(<span style="color:#0099cc;">0</span>))</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> Function</div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> Module</div></td>

</tr></tbody></table><p><br /></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">위 코드에서, <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">IsFirstLetterUpperCase</code> 메서드는 문자열의 첫 글자가 대문자인지 여부를 반환합니다. <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">Module</code> 내에서 정의되며, <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">&lt;Extension()&gt;</code> 속성을 사용해 이것이 Extension 메서드임을 나타냅니다.</p><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">사용 방법</h3><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">Extension 메서드를 정의한 후에는 다음과 같이 사용할 수 있습니다:</p><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p> <span style="white-space:pre;color:rgb(167,29,93);">Dim</span><span style="white-space:pre;"> result </span><span style="white-space:pre;color:rgb(167,29,93);">As</span><span style="white-space:pre;"> </span><span style="white-space:pre;color:rgb(6,109,226);">Boolean</span><span style="white-space:pre;"> </span><span style="white-space:pre;color:rgb(0,134,179);"></span><span style="white-space:pre;color:rgb(167,29,93);">=</span><span style="white-space:pre;"> </span><span style="white-space:pre;color:rgb(99,163,92);">"Hello"</span><span style="white-space:pre;">.IsFirstLetterUpperCase()</span></p><div style="padding:0 6px;white-space:pre;line-height:130%;">Console.WriteLine(result) <span style="color:#999999;">' 출력: True</span></div></td>

</tr></tbody></table><p><br /></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">"Hello"</code> 문자열에 대하여 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">IsFirstLetterUpperCase</code> 메서드를 직접 호출하여, 첫 글자가 대문자인지를 평가합니다.</p><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">주의사항</h3><ul style="border:0px solid rgb(227,227,227);margin:0px 0px 1rem;padding:0px 0px 0px 1.25rem;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;">Extension 메서드는 해당 타입의 메서드처럼 보이지만, 실제로는 정적 메서드이기 때문에 오버라이드할 수 없습니다.</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;">너무 많은 Extension 메서드를 추가하면 코드의 복잡성이 증가할 수 있으므로, 필요하고 의미 있는 경우에만 추가하는 것이 좋습니다.</li></ul><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">VB.NET에서의 Extension 메서드는 코드를 보다 유연하고 재사용 가능하게 만들어 주며, 기존의 타입에 간단하게 새로운 기능을 추가할 수 있는 좋은 방법입니다.</p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><br /></p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><b><span style="font-size:14pt;">또 다른 예:</span></b></p><p><br /></p><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p> <span style="color:rgb(167,29,93);">Imports</span> <span style="color:rgb(6,109,226);">System</span>.Runtime.CompilerServices</p><div style="padding:0px 6px;white-space:pre;">Module Module1</div><div style="padding:0px 6px;white-space:pre;">    <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">&lt;</span>Extension()<span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">&gt;</span></div><div style="padding:0px 6px;white-space:pre;">    <span style="color:rgb(167,29,93);">Public</span> Function ToString(Of I)(L <span style="color:rgb(167,29,93);">As</span> List(Of I), stri <span style="color:rgb(167,29,93);">As</span> Integer) <span style="color:rgb(167,29,93);">As</span> <span style="color:rgb(6,109,226);">String</span></div><div style="padding:0px 6px;white-space:pre;">        <span style="color:rgb(167,29,93);">If</span> L.Count <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">&gt;</span><span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">=</span> (stri <span style="color:rgb(0,134,179);"></span><span style="color:rgb(167,29,93);">+</span> <span style="color:rgb(0,153,204);">1</span>) <span style="color:rgb(167,29,93);">Then</span></div><div style="padding:0px 6px;white-space:pre;">            <span style="color:rgb(167,29,93);">Return</span> L.Item(stri).ToString</div><div style="padding:0px 6px;white-space:pre;">        <span style="color:rgb(167,29,93);">End</span> <span style="color:rgb(167,29,93);">If</span></div><div style="padding:0px 6px;white-space:pre;">        <span style="color:rgb(167,29,93);">Return</span> <span style="color:rgb(6,109,226);">Nothing</span></div><div style="padding:0px 6px;white-space:pre;">    <span style="color:rgb(167,29,93);">End</span> Function</div><div style="padding:0px 6px;white-space:pre;"><span style="color:rgb(167,29,93);">End</span> Module</div></td>

</tr></tbody></table><p><br /></p><p>위 함수 사용법 : <br /></p><div style="margin:0;padding:0;color:#010101;font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;"><div style="padding:0 6px;white-space:pre;"><span style="color:#a71d5d;">Dim</span> U <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">New</span> List(Of <span style="color:#066de2;">String</span>)</div><div style="padding:0 6px;white-space:pre;">U.AddRange({<span style="color:#63a35c;">"가"</span>, <span style="color:#63a35c;">"을"</span>, <span style="color:#63a35c;">"하"</span>})</div><div style="padding:0 6px;white-space:pre;">MsgBox(U.ToString(<span style="color:#0099cc;">1</span>))<br /><br />여기서 리스트중 1번째인 "을"을 반환한다.<br /> </div></div></div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-04-17T15:36:51+09:00</dc:date>
</item>


<item>
<title>정규식(정규 표현식, Regular Expression)</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=254</link>
<description><![CDATA[<div></div><p><img src="../../../data/editor/2404/6f0a85100beff04e7bc0dcecb3f291e7_1713332068_0755.jpg" title="6f0a85100beff04e7bc0dcecb3f291e7_1713332068_0755.jpg" alt="6f0a85100beff04e7bc0dcecb3f291e7_1713332068_0755.jpg" /></p><p><br /></p><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="935"><p> <span style="color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;">정규식(정규 표현식, Regular Expression)은 텍스트에서 특정 패턴을 찾기 위해 사용하는 문자열입니다. 컴퓨터 과학에서 널리 사용되는 이 툴은 복잡한 검색과 문자열 치환 작업을 간편하게 수행할 수 있게 해줍니다. 여러 프로그래밍 언어 및 텍스트 편집 도구에서 지원합니다.</span></p><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">정규식의 기본 구성 요소</h3><ol style="border:0px solid rgb(227,227,227);margin:0px;padding:0px 0px 1rem 1.25rem;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><p style="border:0px solid rgb(227,227,227);"><span style="border:0px solid rgb(227,227,227);font-weight:600;">리터럴(Literals)</span>: 텍스트 그대로의 문자입니다. 예를 들어, 정규식 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">abc</code>는 "abc"라는 문자열과 일치합니다.</p></li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><p style="border:0px solid rgb(227,227,227);"><span style="border:0px solid rgb(227,227,227);font-weight:600;">메타 문자(Meta Characters)</span>: 특별한 의미를 가진 문자로, 패턴을 구성하는 데 사용됩니다. 자주 사용되는 메타 문자에는 다음이 포함됩니다.</p><ul style="border:0px solid rgb(227,227,227);list-style:disc;margin:0px;padding:0px 0px 0px 1rem;"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">.</code>: 어떤 한 문자와 일치 (개행 문자 제외)</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">^</code>: 입력의 시작과 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">$</code>: 입력의 끝과 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">*</code>: 앞의 요소가 0회 이상 반복</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">+</code>: 앞의 요소가 1회 이상 반복</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">?</code>: 앞의 요소가 0회 또는 1회 등장</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">|</code>: or 조건을 표현 (A|B는 A 또는 B)</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\</code>: 다음 문자를 리터럴로 취급 (메타 문자가 아닌 문자로)</li></ul></li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><p style="border:0px solid rgb(227,227,227);"><span style="border:0px solid rgb(227,227,227);font-weight:600;">문자 클래스(Character Classes)</span>: 특정 집합 중 하나의 문자와 일치시킵니다.</p><ul style="border:0px solid rgb(227,227,227);list-style:disc;margin:0px;padding:0px 0px 0px 1rem;"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">[abc]</code>: 'a', 'b', 또는 'c'와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">[^abc]</code>: 'a', 'b', 'c'를 제외한 모든 문자와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">[a-z]</code>: 모든 소문자와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">[A-Z]</code>: 모든 대문자와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">[0-9]</code>: 모든 숫자와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\d</code>: 모든 숫자와 일치 (digit)</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\D</code>: 숫자가 아닌 모든 문자와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\w</code>: 알파벳 문자, 숫자, 언더스코어(_)와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\W</code>: <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\w</code>가 아닌 문자와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\s</code>: 모든 공백 문자 (스페이스, 탭, 줄바꿈 등)와 일치</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\S</code>: 공백이 아닌 모든 문자와 일치</li></ul></li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><p style="border:0px solid rgb(227,227,227);"><span style="border:0px solid rgb(227,227,227);font-weight:600;">수량자(Quantifiers)</span>: 앞선 문자 또는 그룹이 몇 번 반복되는지를 지정합니다.</p><ul style="border:0px solid rgb(227,227,227);list-style:disc;margin:0px;padding:0px 0px 0px 1rem;"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">{n}</code>: 정확히 n번 반복</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">{n,}</code>: 최소 n번 반복</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">{n,m}</code>: 최소 n번 최대 m번 반복</li></ul></li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0.375em;"><p style="border:0px solid rgb(227,227,227);"><span style="border:0px solid rgb(227,227,227);font-weight:600;">그룹화(Grouping)</span>: 소괄호 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">()</code>를 사용하여 표현식을 그룹으로 묶습니다. 그룹화를 통해 여러 작업을 수행할 수 있으며, 추출이나 참조가 가능합니다.</p></li></ol><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">정규식의 활용 예시</h3><ul style="border:0px solid rgb(227,227,227);margin:0px 0px 1rem;padding:0px 0px 0px 1.25rem;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;">이메일 주소 검증: <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-top:1.25em;margin-bottom:1.25em;">^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$</code></li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;">전화번호 형식 확인: <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-top:1.25em;margin-bottom:1.25em;">\d{2,3}-\d{3,4}-\d{4}</code></li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;">URL 확인: <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-top:1.25em;margin-bottom:1.25em;">https?://(?:www\.)?.+</code></li></ul><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border:1px solid #cccccc;border-top:0;border-right:0;background-color:#ffffff;" width="918"><p> </p></td></tr></tbody></table><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">1. 이메일 주소 검증</h3><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border-width:0px 0px 1px 1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:rgb(204,204,204);border-left-color:rgb(204,204,204);" width="918"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;font-size:16px;font-weight:400;">이메일의 유효성을 확인하기 위해 다음과 같은 정규식을 사용할 수 있습니다.</p><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;font-weight:400;line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">regex</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><code class="!whitespace-pre hljs language-regex" style="border:0px solid rgb(227,227,227);font-family:inherit;font-size:inherit;color:rgb(255,255,255);font-weight:inherit;background:none;line-height:1.5;padding:0.1em;white-space:normal;word-spacing:normal;">^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

</code></div></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;font-size:16px;font-weight:400;">이 정규식은 이메일이 일반적으로 사용되는 문자로 시작하고, "@" 기호, 도메인 이름, 마지막으로 점(".") 뒤에 두 글자 이상의 도메인 확장자가 오는 패턴을 검사합니다.</p></td></tr></tbody></table><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">2. URL 유효성 검사</h3><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border-width:0px 0px 1px 1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:rgb(204,204,204);border-left-color:rgb(204,204,204);" width="918"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;font-size:16px;font-weight:400;">웹사이트 주소(URL)의 유효성을 검사하기 위해 사용될 수 있는 정규식입니다.</p><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;font-weight:400;line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">regex</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><code class="!whitespace-pre hljs language-regex" style="border:0px solid rgb(227,227,227);font-family:inherit;font-size:inherit;color:rgb(255,255,255);font-weight:inherit;background:none;line-height:1.5;padding:0.1em;white-space:normal;word-spacing:normal;">https?://(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b(?:/[-a-zA-Z0-9@:%_\+.~#?&amp;//=]*)?

</code></div></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;font-size:16px;font-weight:400;">이 패턴은 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">http</code> 또는 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">https</code>로 시작하고, 선택적으로 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">www.</code>가 포함되며, 도메인 이름과 확장자를 포함하고, 선택적으로 경로와 쿼리 문자열을 포함할 수 있습니다.</p></td></tr></tbody></table><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">3. 전화번호 형식 확인</h3><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border-width:0px 0px 1px 1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:rgb(204,204,204);border-left-color:rgb(204,204,204);" width="918"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;font-size:16px;font-weight:400;">다양한 형태의 전화번호를 검사하는 간단한 예시입니다.</p><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;font-weight:400;line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">regex</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><code class="!whitespace-pre hljs language-regex" style="border:0px solid rgb(227,227,227);font-family:inherit;font-size:inherit;color:rgb(255,255,255);font-weight:inherit;background:none;line-height:1.5;padding:0.1em;white-space:normal;word-spacing:normal;">\+?\d{1,3}?[-.\s]?\(?\d{1,3}\)?[-.\s]?\d{1,4}[-.\s]?\d{1,4}

</code></div></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;font-size:16px;font-weight:400;">이 정규식은 국제 코드(선택적), 지역 코드(괄호 내에 있을 수 있음), 그리고 번호를 포함하여 다양한 형태의 전화번호와 일치합니다.</p></td></tr></tbody></table><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">4. 비밀번호 복잡성 검사</h3><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border-width:0px 0px 1px 1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:rgb(204,204,204);border-left-color:rgb(204,204,204);" width="918"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;font-size:16px;font-weight:400;">보안 강화를 위해 특정 조건을 만족하는 비밀번호를 검사하는 정규식입니다.</p><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;font-weight:400;line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">regex</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><code class="!whitespace-pre hljs language-regex" style="border:0px solid rgb(227,227,227);font-family:inherit;font-size:inherit;color:rgb(255,255,255);font-weight:inherit;background:none;line-height:1.5;padding:0.1em;white-space:normal;word-spacing:normal;">^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&amp;])[A-Za-z\d@$!%*?&amp;]{8,}$

</code></div></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;font-size:16px;font-weight:400;">이 정규식은 적어도 하나의 소문자, 대문자, 숫자, 특수 문자를 포함하고 총 8자 이상인 비밀번호와 일치합니다.</p></td></tr></tbody></table><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">5. 코드에서 주석 제거</h3><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border-width:0px 0px 1px 1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:rgb(204,204,204);border-left-color:rgb(204,204,204);" width="918"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;font-size:16px;font-weight:400;">프로그래밍 코드에서 C 스타일의 주석을 제거할 때 사용할 수 있는 정규식입니다.</p><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;font-weight:400;line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">regex</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><code class="!whitespace-pre hljs language-regex" style="border:0px solid rgb(227,227,227);font-family:inherit;font-size:inherit;color:rgb(255,255,255);font-weight:inherit;background:none;line-height:1.5;padding:0.1em;white-space:normal;word-spacing:normal;">/\*[^*]*\*+(?:[^/*][^*]*\*+)*/

</code></div></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;font-size:16px;font-weight:400;">이 정규식은 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">/*</code>로 시작하고 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">*/</code>로 끝나는 멀티라인 주석을 찾아냅니다.</p></td></tr></tbody></table><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">6. HTML 태그 제거</h3><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';"></h3><table border="0" cellpadding="0" cellspacing="0" style="border:1px solid #cccccc;border-left:0;border-bottom:0;" class="__se_tbl"><tbody><tr><td style="border-width:0px 0px 1px 1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:rgb(204,204,204);border-left-color:rgb(204,204,204);" width="918"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;font-size:16px;font-weight:400;">웹 페이지나 다른 HTML 소스에서 모든 태그를 제거하고 텍스트만 추출하려면 다음과 같은 정규식을 사용할 수 있습니다.</p><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;font-weight:400;line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">regex</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><code class="!whitespace-pre hljs language-regex" style="border:0px solid rgb(227,227,227);font-family:inherit;font-size:inherit;color:rgb(255,255,255);font-weight:inherit;background:none;line-height:1.5;padding:0.1em;white-space:normal;word-spacing:normal;">&lt;[^&gt;]+&gt;

</code></div></div><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;margin-bottom:1.25em;font-size:16px;font-weight:400;">이 정규식은 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">&lt;</code>로 시작하고 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">&gt;</code>로 끝나는 모든 문자열과 일치하여, HTML 태그를 찾아내고 제거합니다.</p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;font-size:16px;font-weight:400;">정규식은 이러한 예시 외에도 로그 분석, 데이터 추출, 입력 검증 등 다양한 분야에서 매우 유용하게 활용됩니다. 각 경우에 맞게 적절한 패턴을 설계하여 활용할 수 있습니다.</p></td>

</tr></tbody></table><br /><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">주의사항</h3><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;">정규식은 매우 강력하지만, 오용하면 의도치 않은 결과를 초래할 수 있습니다. 복잡하고 긴 정규식은 가독성을 저하시키고, 유지보수가 어려울 수 있습니다. 따라서 간결하고 명확한 패턴 설계가 중요합니다.</p><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;">정규식은 다양한 프로그래밍 언어 및 도구에서 필수적인 요소로 자리 잡고 있습니다. 그 효용성 덕분에 데이터 검증, 처리, 분석 작업에서 빈번히 사용됩니다.</p></td>

</tr></tbody></table><p><br /></p><p><br /></p>

     <p><br /></p><p>일단 <span class="highlight">정규식</span>이라 함은 다들 아시겠지만 문자열이 <span class="highlight">특정</span>한 패턴에 해당하는지 검사하거나 <span class="highlight">특정</span> 패턴을 가진 부분을<br /></p><p><span class="highlight">추출</span>하기 위해서 사용합니다.</p><p>문자열을 파싱해서 할 수도있지만 비용이 많이 드는 반면에 <span class="highlight">정규식</span>을 사용하면 정확하고 빠르게 수행을 할 수 있고,</p><p>다른 많은 언어에서도 지원을 하니 뭐 많이들 사용하시는 자바스크립트 등에서 효과적으로 사용할 수 있는 장점이 있을 것 같고요...</p><p><span class="highlight">정규식</span> 문법을 알아야 한다는 단점이 있을 거 같습니다.</p><p>일단 <span class="highlight">정규식</span>은 공식적으로 jdk 1.4 버전 이상에서 사용할 수 있습니다.</p><p>그래서... 가장 큰 장점은 자바 api에서 공식 지원하므로 까다로운 메서드나 클래스를 만들지않고 바로 사용할 수 있다는 점을 꼽고 싶습니다.</p><p> </p><p><span class="highlight">정규식</span>은 자바 예약어와 같은 역할을 하는 특수문자들이 있습니다.</p><p> </p><p><span class="highlight">정규식</span>을 보면 첨에 보면 좀 당황하게 되는 부분이 괄호였습니다. 괄호의 쓰임새를 보겠습니다.</p><p>괄호는 (), {}, [] 일케 3 종류를 씁니다.</p><p>()는 괄호 안에 있는 문자나 문자열을 하나의 문자처럼 취급을 합니다.</p><p>예를 들어 (aa) 일케 하면 꼭 aa 라는 것이죠~~</p><p>{}는 괄호 앞에 있는 문자의 반복횟수를 나타냅니다.</p><p>{2}는 문자가 두번 반복된다. {2,}는 문자가 두번 이상 반복된다. {2, 5}는 문자가 2번 이상 5번 이하로 반복된다.</p><p>(aa)하고 a{2} 하고는 같은 패턴인 것을 알 수 있습니다.</p><p>[]는 하나의 문자를 나타냅니다. char 라고 보셔도 무관할 거 같습니다.</p><p>근데 []는 범위를 줄 수도 있습니다. 범위를 주는 방법은 두가지가 있습니다.</p><p>첫번째는 [aeho] 이런 방식입니다. 이것은 어떤 한 문자가 'a' or 'e' or 'h' or 'o' 라는 것을 나타냅니다.</p><p>두번째는 -를 사용하는 방법입니다. [a-d] 일케하면 'a' or 'b' or 'c' or 'd' 라는 것을 나타냅니다.</p><p>이 두가지 방식을 함께 사용할 수도 있는데...[a-zA-Z] 일케하면 다들 아시겠지만...</p><p>영문자를 나타냅니다.</p><p> </p><p>그렇다면 괄호를 함께 사용해서 (kor[1-3]{2,}ea){2} 이런 <span class="highlight">정규식</span>은 kor22eakor312ea 와 같은 문자열을 나타낼 수 있겟죠...</p><p> </p><p>[]괄호의 안에있는 범위중 <span class="highlight">특정</span>한 것들을 골라서 미리 정해놓은 것이 있습니다. 이것이 '<span class="highlight">정규식</span> 클래스'입니다.</p><p>[a-zA-Z] == \p{Alpha}, [0-9] == \p{Digit}, [ \t\n\x0B\f\r] == \p{Space} 등등... api에 자세히 나와있습니다.</p><p> </p><p>다음으로 기호를 보겠습니다.</p><p>일단 .(쩜) 입니다.</p><p>.(쩜)은 하나의 문자를 나타냅니다. a.b 라는 패턴은 a랑 b사이에 하나의 문자가 꼭 있어야 한다는 패턴입니다.</p><p>a..b는 a랑 b사이에 꼭 두개의 문자가 있어야 한다는 패턴이 됩니다.</p><p>근데 우낀건 이 .(쩜) 자체를 나타낼려면 특수문자 이므로 \를 붙여줘야 하는데</p><p>이 .(쩜)이 [] 안에 쓰이면 즉 [.] == \. 이 되어버립니다. 즉 . != \. == [.] == [\.] 이라는 얘기지요</p><p>이유는 모르겠지만... [] 자체가 하나의 케릭터를 나타내기 때문에 [.]도 .(쩜) 문자로 취급을 하는 거 같습니다.</p><p>아까 위에서 a[.]b하면 a랑 b사이에 꼭 .(쩜) 문자가 있어야 한다는 패턴이라는 얘기지요. 즉 a/.b == a[.] 가 됩니다.</p><p> </p><p>^ 문자는 문자열의 맨앞을 나타냅니다. ^Aeho 하면 문자열이 Aeho로 시작한다는 패턴이 됩니다.</p><p>이 ^가 []안에 쓰이면 not(!)의 의미를 같습니다. [^a-zA-Z] 는 영문자가 아니다 라는 패턴이 됩니다.</p><p> </p><p>$ 문자는 문자열의 끝을 나타냅니다. Aeho$ 하면 문자열이 Aeho로 끝난다는 패턴이 됩니다.</p><p> </p><p>| 문자는 or를 나타냅니다. |문자 자체를 나타낼려면 \|를 해야 합니다.</p><p>흔희 String 클래스의 split() 메서드가 제대로 안짤릴 때가 있다는 사람들이 있습니다.</p><p>그래서 StringTokenizer객체를 사용하고는 하던데요... 잘못된 <span class="highlight">정규식</span> 사용 때문이라고 생각합니다.</p><p>split()은 인자로 <span class="highlight">정규식</span> 패턴을 받고 StringTokenizer 는 실제 문자열을 구분자의 인자로 받습니다. 실재로 이들은 기능이 좀 다릅니다. 각각의 사용 용법이 다르다고 생각합니다. String.split()이 제대로 동작하지 않는다면 api 그것도 java.lang.String클래스에 멤서드로 등록이 되있을 수가 없을 것입니다...ㅋㅋ</p><p> </p><p>"ab|cd|ef" 라는 문자열을 split("|") 하게되면 배열이 a,b,c,d,e,f 로 짤릴 것입니다. split("\\|") 하게되면 ab, cd, ef 로 짤릴 것입니다. 이유는 다들 잘 아실겁니다.</p><p>스플릿이 잘 짤릴 때도 있고 안될 때도 있다고 하시는 사람들은 대부분 그 구분자를 <span class="highlight">정규식</span>에서 사용하는 특수</p><p>문자(대표적으로 |)를 사용할려고 하기때문에 또 그 때 \를 잘 사용을 하지 않아서 그런 경우라고 생각합니다.</p><p> </p><p>String 클래스에 있는 trim() 메서드를 <span class="highlight">정규식</span>으로 구현한다면...</p><p>public String trim() {<br />    return this.str.replaceAll("^\\p{Space}|\\p{Space}$", "");<br />} 정도가 되지 않을까 싶습니다. 아님 말고요...ㅋㅋ</p><p> </p><p>다음은... 반복 횟수를 나타내는 기호들입니다.<br />* 기호는 앞에있는 패턴이 0번 이상 출현함을 나타냅니다. ".*" 은 모든 문자열을 나타냅니다.<br />+ 기호는 앞에있는 패턴이 1번 이상 출현함을 나타냅니다. {1,} 이 녀석이랑 같은 의미가 될 거 같습니다.<br />? 기호는 앞에있는 패턴이 0 or 1 번 출현함을 나타냅니다. {0, 1} 이 녀것이 되겠네요.</p><p> </p><p>이 정도만 알면 <span class="highlight">정규식</span>을 읽고 쓸 수 있었습니다....ㅋㅋ, 더이상 알고 싶지않습니다.</p><p>필요하다면 api에 자세히 나와있죠... 역시 공식지원이라 좋군요...ㅎㅎ</p><p> </p><p>이 번에는 <span class="highlight">정규식</span> 그룹을 보겠습니다. 그룹은 api 보면 설명이 나왔습니다만...<br />()의 중복된 순서를 나타냅니다. 예를 들어 (A)(B(C)) 이와같은 패턴이 있다면...괄호가 열려진 순서대로 그룹의 번호가 정해집니다. group(0) 번은 항상 패턴 전체를 나타냅니다. group(1)은 (A) 패턴입니다. group(2)은 (B(C)) 가 되고, group(3) 은 (C) 이 됩니다.</p><p> </p><p>이 그룹은 java.util.regex.Matcher 클래스를 이용하여 사용할 수 있는데요...<br />예를 들어 어떤 문자열이 있는데... 그 전체 문자열 중에서 <span class="highlight">url</span> 정보를 가져오고 나서 실제로 그 <span class="highlight">url의</span> 프로토콜을 알아보고자 한다면 프로토콜 부분의 패턴을 ()로 묶어주면 group(1) 을 이용하여 가져올 수 있게 됩니다.</p><p>다른 쓸 말이 많지만... 일단 이 정도만 정리해 보겠습니다.<br />힘드네요... 헉헉...</p><div></div>
<div class="content_move">[이 게시물은 하나를하더라도최선을님에 의해 2024-04-17 15:18:37 자유게시판에서 이동 됨]</div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-04-17T14:40:41+09:00</dc:date>
</item>


<item>
<title>[VB.NET] 파일 저장 시 유효하지 않은 파일명에 대한 특수 문자 처리 및 복구 방법</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=253</link>
<description><![CDATA[<div></div><p><img src="../../../data/editor/2404/6f0a85100beff04e7bc0dcecb3f291e7_1713334503_2513.jpg" title="6f0a85100beff04e7bc0dcecb3f291e7_1713334503_2513.jpg" alt="6f0a85100beff04e7bc0dcecb3f291e7_1713334503_2513.jpg" /></p><p><br /></p><div style="margin:0;padding:0;color:#010101;font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace;"><div style="padding:0 6px;white-space:pre;"><div class="se-component se-table se-l-default __se-component" style="margin:0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);white-space:normal;background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><br /></div><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><br /><table class="se-table-content" style="margin:0px;padding:0px;font:inherit;border-width:1px 0px 0px 1px;border-style:solid;border-color:rgb(210,210,210);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="3" rowspan="1" style="margin:0px;padding:10px;border-width:0px 1px 1px 0px;border-style:solid;border-color:rgb(210,210,210);font:inherit;vertical-align:middle;background-color:transparent;max-width:0px;width:527px;height:129px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">    </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Public</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Function StringToFileName(fName </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">) </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> V() </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> {</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"%"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"\"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"/"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">":"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"*"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"?"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">""""</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"&lt;"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"&gt;"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"|"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">} </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(153,153,153);">'// 변환시</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> str </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> fName</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">For</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Each T </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> In V</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> CStr(Asc(T))</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">If</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s.Length </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&lt;</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">3 </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Then</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"0"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&amp;</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">.Format(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"%{0}"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, Microsoft.VisualBasic.Right(s, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">))</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Else</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"0"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&amp;</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Microsoft.VisualBasic.Right(s, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">4</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">)</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">.Format(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"%{0}%{1}"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, s.Substring(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">0</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">), s.Substring(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">))</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">End</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">If</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            str </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Replace$(str, T, s)</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Next</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Return</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> str</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">    </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">End</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Function</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-table se-l-default __se-component" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);white-space:normal;background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-table se-l-default se-section-align-" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;width:528px;"><div class="se-table-container" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:0px;line-height:inherit;font-family:inherit;vertical-align:baseline;width:528px;background-color:transparent;"><table class="se-table-content" style="margin:0px;padding:0px;font:inherit;border-width:1px 0px 0px 1px;border-style:solid;border-color:rgb(210,210,210);vertical-align:baseline;border-spacing:0px;width:528px;"><tbody style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><tr class="se-tr" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;height:40px;"><td class="se-cell" colspan="3" rowspan="1" style="margin:0px;padding:10px;border-width:0px 1px 1px 0px;border-style:solid;border-color:rgb(210,210,210);font:inherit;vertical-align:middle;background-color:transparent;max-width:0px;width:527px;height:129px;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">    </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Public</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Function FileNameToString(fName </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">) </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> V() </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> {</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"\"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"/"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">":"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"*"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"?"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">""""</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"&lt;"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"&gt;"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"|"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"%"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">} </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(153,153,153);">'// 복구시</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> str </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> fName</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">For</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Each T </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> In V</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Dim</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">As</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> CStr(Asc(T))</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">If</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s.Length </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&lt;</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">3 </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Then</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"0"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&amp;</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">.Format(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"%{0}"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, Microsoft.VisualBasic.Right(s, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">))</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Else</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"0"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">&amp;</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> s</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Microsoft.VisualBasic.Right(s, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">4</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">)</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">                s </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(6,109,226);">String</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">.Format(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(99,163,92);">"%{0}%{1}"</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, s.Substring(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">0</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">), s.Substring(</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">, </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(0,153,204);">2</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">))</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">End</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">If</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">            str </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">=</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Replace$(str, s, T)</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Next</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">        </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">Return</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> str</span></p></div><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.6;font-family:inherit;vertical-align:baseline;"><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);">    </span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(167,29,93);">End</span><span class="se-fs-fs11 se-ff- se-style-unset" style="margin:0px;padding:0px;border:0px;font-variant:inherit;font-weight:inherit;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(1,1,1);"> Function</span></p></div></td></tr></tbody></table></div></div></div></div><div class="se-component se-text se-l-default" style="margin:30px 0px 0px;padding:0px;border:0px;font-size:medium;line-height:inherit;font-family:'se-nanumgothic', '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;color:rgb(138,131,126);white-space:normal;background-color:rgb(255,255,255);"><div class="se-component-content" style="margin:0px auto;padding:0px 40px;border:0px;font:inherit;vertical-align:baseline;max-width:100%;"><div class="se-section se-section-text se-l-default" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><div class="se-module se-module-text" style="margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;"><p class="se-text-paragraph se-text-paragraph-align-" style="border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:11px;line-height:1.8;font-family:inherit;vertical-align:baseline;"><span class="se-fs- se-ff-" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:15px;font-family:'se-nanumgothic', arial, '나눔고딕', nanumgothic, sans-serif, Meiryo;vertical-align:baseline;">​</span></p></div></div></div></div></div><div style="padding:0 6px;white-space:pre;"><p style="border:0px solid rgb(227,227,227);margin-bottom:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">파일명을 안전하게 저장하고, 추후에 원본 파일명을 정확하게 복구할 수 있는 VB.NET 함수를 작성해 보겠습니다. 이를 위해 금지된 문자를 유니코드 값으로 변환하고, 특정 접두사를 사용하여 이러한 치환을 식별할 수 있게 합니다. 이 방식은 복구가 가능하며, 충돌을 방지합니다.</p><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">파일명 치환 함수</h3><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;background-color:rgb(255,255,255);color:rgb(13,13,13);line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">vb</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Public</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Function</span><span style="color:rgb(255,255,255);font-size:14px;"> ReplaceInvalidFileNameChars(fileName </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">String</span><span style="color:rgb(255,255,255);font-size:14px;">) </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">String</span><span style="color:rgb(255,255,255);font-size:14px;">

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Dim</span><span style="color:rgb(255,255,255);font-size:14px;"> invalidChars </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">Char</span><span style="color:rgb(255,255,255);font-size:14px;">() = System.IO.Path.GetInvalidFileNameChars()

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Dim</span><span style="color:rgb(255,255,255);font-size:14px;"> safeFileName </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-built_in" style="border:0px solid rgb(227,227,227);color:rgb(233,149,12);font-size:14px;">New</span><span style="color:rgb(255,255,255);font-size:14px;"> System.</span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Text</span><span style="color:rgb(255,255,255);font-size:14px;">.StringBuilder(fileName)



    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">For</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Each</span><span style="color:rgb(255,255,255);font-size:14px;"> c </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">Char</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">In</span><span style="color:rgb(255,255,255);font-size:14px;"> invalidChars

        safeFileName.Replace(c, </span><span class="hljs-string" style="border:0px solid rgb(227,227,227);color:rgb(0,166,125);font-size:14px;">"_U"</span><span style="color:rgb(255,255,255);font-size:14px;"> + AscW(c).ToString(</span><span class="hljs-string" style="border:0px solid rgb(227,227,227);color:rgb(0,166,125);font-size:14px;">"X4"</span><span style="color:rgb(255,255,255);font-size:14px;">))

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Next</span><span style="color:rgb(255,255,255);font-size:14px;">



    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Return</span><span style="color:rgb(255,255,255);font-size:14px;"> safeFileName.ToString()

</span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">End</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Function</span><br /></div></div><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">파일명 복구 함수</h3><pre style="border:0px solid rgb(227,227,227);font-size:0.875em;margin-top:0px;margin-bottom:0px;background-color:rgb(255,255,255);color:rgb(13,13,13);line-height:1.71429;padding:0px;font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;"></pre><div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium" style="border-width:0.5px;border-style:solid;"><div class="flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md" style="border:0px solid rgb(227,227,227);padding:0.5rem 1rem;font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:0.75rem;line-height:1rem;"><span style="border:0px solid rgb(227,227,227);">vb</span><span style="border:0px solid rgb(227,227,227);">Copy code</span></div><div class="p-4 overflow-y-auto" style="border:0px solid rgb(227,227,227);padding:1rem;"><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Public</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Function</span><span style="color:rgb(255,255,255);font-size:14px;"> RecoverFileName(safeFileName </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">String</span><span style="color:rgb(255,255,255);font-size:14px;">) </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">String</span><span style="color:rgb(255,255,255);font-size:14px;">

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Dim</span><span style="color:rgb(255,255,255);font-size:14px;"> recoveredFileName </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-built_in" style="border:0px solid rgb(227,227,227);color:rgb(233,149,12);font-size:14px;">New</span><span style="color:rgb(255,255,255);font-size:14px;"> System.</span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Text</span><span style="color:rgb(255,255,255);font-size:14px;">.StringBuilder(safeFileName)



    </span><span class="hljs-comment" style="border:0px solid rgb(227,227,227);color:rgba(255,255,255,0.5);font-size:14px;">' 순차적으로 Unicode 포인트에 해당하는 문자를 복구합니다.</span><span style="color:rgb(255,255,255);font-size:14px;">

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Dim</span><span style="color:rgb(255,255,255);font-size:14px;"> regex </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-built_in" style="border:0px solid rgb(227,227,227);color:rgb(233,149,12);font-size:14px;">New</span><span style="color:rgb(255,255,255);font-size:14px;"> System.</span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Text</span><span style="color:rgb(255,255,255);font-size:14px;">.RegularExpressions.Regex(</span><span class="hljs-string" style="border:0px solid rgb(227,227,227);color:rgb(0,166,125);font-size:14px;">"_U([0-9A-F]{4})"</span><span style="color:rgb(255,255,255);font-size:14px;">)

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Dim</span><span style="color:rgb(255,255,255);font-size:14px;"> m </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> System.</span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Text</span><span style="color:rgb(255,255,255);font-size:14px;">.RegularExpressions.Match = regex.Match(safeFileName)



    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">While</span><span style="color:rgb(255,255,255);font-size:14px;"> m.Success

        </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Dim</span><span style="color:rgb(255,255,255);font-size:14px;"> unicodeChar </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">As</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-type" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">Char</span><span style="color:rgb(255,255,255);font-size:14px;"> = ChrW(Convert.ToInt32(m.Groups(</span><span class="hljs-number" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">1</span><span style="color:rgb(255,255,255);font-size:14px;">).Value, </span><span class="hljs-number" style="border:0px solid rgb(227,227,227);color:rgb(223,48,121);font-size:14px;">16</span><span style="color:rgb(255,255,255);font-size:14px;">))

        recoveredFileName.Replace(m.Value, unicodeChar)

        m = m.NextMatch()

    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">End</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">While</span><span style="color:rgb(255,255,255);font-size:14px;">



    </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Return</span><span style="color:rgb(255,255,255);font-size:14px;"> recoveredFileName.ToString()

</span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">End</span><span style="color:rgb(255,255,255);font-size:14px;"> </span><span class="hljs-keyword" style="border:0px solid rgb(227,227,227);color:rgb(46,149,211);font-size:14px;">Function</span><br /></div></div><h3 style="border:0px solid rgb(227,227,227);font-size:1.25em;margin:1rem 0px 0.5rem;line-height:1.6;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';background-color:rgb(255,255,255);">사용법 및 설명</h3><ul style="border:0px solid rgb(227,227,227);margin:0px 0px 1rem;padding:0px 0px 0px 1.25rem;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);"><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><span style="border:0px solid rgb(227,227,227);font-weight:600;margin-top:1.25em;">치환 함수</span> (<code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">ReplaceInvalidFileNameChars</code>): 파일 이름에 포함된 모든 유효하지 않은 문자를 해당 유니코드 값으로 치환합니다. 예를 들어, <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">\</code>는 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-bottom:1.25em;">_U005C</code>로 변환됩니다.</li><li style="border:0px solid rgb(227,227,227);margin-bottom:0px;margin-top:0px;padding-left:0px;"><span style="border:0px solid rgb(227,227,227);font-weight:600;margin-top:1.25em;">복구 함수</span> (<code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">RecoverFileName</code>): 치환된 문자열을 검사하여 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">_UXXXX</code> 형식을 갖는 모든 문자를 원래의 문자로 복구합니다. 여기서 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;margin-bottom:1.25em;">XXXX</code>는 문자의 유니코드 포인트입니다.</li></ul><p style="border:0px solid rgb(227,227,227);margin-top:1.25em;color:rgb(13,13,13);font-family:'Söhne', 'ui-sans-serif', 'system-ui', '-apple-system', 'Segoe UI', Roboto, Ubuntu, Cantarell, 'Noto Sans', sans-serif, 'Helvetica Neue', Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';font-size:16px;background-color:rgb(255,255,255);">이 방식을 사용하면, 파일 이름에 원래 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">_UXXXX</code> 형식의 문자열이 포함되어 있더라도 이를 올바르게 처리할 수 있습니다. 단, 파일 이름에 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">_U</code>와 네 자리 숫자가 자연스럽게 포함되는 경우에도 이를 원래 문자로 잘못 복구할 수 있는 위험이 있으므로, 이 점을 유의하여 사용해야 합니다. 가능하다면, 사용 환경에서 <code style="border:0px solid rgb(227,227,227);font-family:'Söhne Mono', Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:0.875em;font-weight:600;">_UXXXX</code> 패턴이 자연스럽게 발생할 가능성이 낮은지 확인해야 합니다.</p></div></div>

<div class="content_move">[이 게시물은 하나를하더라도최선을님에 의해 2024-04-17 15:18:17 자유게시판에서 이동 됨]</div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-04-17T15:16:23+09:00</dc:date>
</item>


<item>
<title>Chrome webdriver Headless모드</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=252</link>
<description><![CDATA[<div></div><p><span style="color:rgb(74,74,74);font-family:Ubuntu, Roboto, 'Open Sans', 'Microsoft YaHei', sans-serif;font-size:16.5px;background-color:rgb(255,255,255);">크롬 버전이 60버전 이상인 크롬에서는 ‘Headless’모드를 사용할 수 있습니다.</span> </p><p><span style="color:rgb(74,74,74);font-family:Ubuntu, Roboto, 'Open Sans', 'Microsoft YaHei', sans-serif;font-size:16.5px;background-color:rgb(255,255,255);"><br /></span></p>








<div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Dim</span> chromeOptions <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">New</span> ChromeOptions()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">chromeOptions.AddArgument(<span style="color:#63a35c;">"--headless"</span>) <span style="color:#999999;">'// Headless모드</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">chromeOptions.AddArgument(<span style="color:#63a35c;">"--window-size=1920x1080"</span>)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">chromeOptions.AddArgument(<span style="color:#63a35c;">"--disable-gpu"</span>) <span style="color:#999999;">'// gpu(그래픽카드 가속)를 사용하지 않음</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">chromeOptions.AddArgument(<span style="color:#63a35c;">"--user-agent="</span> <span style="color:#0086b3;"></span><span style="color:#a71d5d;">&amp;</span> USER_AGENT)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">iWD <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">New</span> ChromeDriver(service, chromeOptions, TimeSpan.FromSeconds(<span style="color:#0099cc;">30</span>))</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><br /></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;white-space:normal;background-color:rgb(255,255,255);">Headless 브라우저임을 숨기기</span><br style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;white-space:normal;background-color:rgb(255,255,255);" /><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;white-space:normal;background-color:rgb(255,255,255);">Headless 모드는 CLI 기반의 서버 OS에서도 Selenium을 통한 크롤링/테스트를 가능하게 만드는 멋진 모드지만, 어떤 서버들에서는 이런 Headless 모드를 감지하는 여러 가지 방법을 쓸 수 있습니다.</span> </div><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2024-01-09T13:13:51+09:00</dc:date>
</item>


<item>
<title>[vb.net] 'Microsoft.Jet.OLEDB.12.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다.</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=251</link>
<description><![CDATA[<div></div><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>몇 년 전, Microsoft Office 2010 이전에는 개발자의 삶이 좀 더 편했습니다. Office는 32비트였습니다.</span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>아시다시피 Microsoft Office 2010 이후로 우리 시대는 좀 더 복잡해졌습니다. 사용자는 64비트 기본 버전의 Office도 설치할 수 있습니다.</span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>이는 개발자에게 OLEDB 공급자를 사용하여 Excel 또는 Access 파일에 연결하는 32비트 응용 프로그램이 64비트 Office 2010 설치에 32비트 공급자가 없을 수 있으므로 더 이상 작동하지 않을 수 있음을 의미합니다.</span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>이러한 경우 사용자가 자신의 컴퓨터에 유효한 Microsoft Office 2010을 설치했더라도 응용 프로그램에서 다음과 같은 오류가 발생할 수 있습니다.</span></p><blockquote style="margin:5px 0px;padding:8px 12px 8px 36px;background:rgb(244,245,247) url(&quot;img/blockquote.gif&quot;) no-repeat 3px 3px;border:1px dashed rgb(204,204,204);"><p style="margin-bottom:10px;"><span style="color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;">'Microsoft.Jet.OLEDB.4.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다.</span><br /></p><p style="margin-bottom:10px;"><span style="color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;">'Microsoft.Jet.OLEDB.12.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다.</span><span style="color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;"> </span></p></blockquote><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><em style="margin:0px;padding:0px;">이러한 문제를 해결하기 위해 Microsoft는 "Microsoft Access Database Engine 2010 재배포 가능 패키지"</em><span><span> 라는 새로운 재배포 가능 패키지를 출시했습니다 </span><span>. </span><span>이 재배포 가능 패키지는 Microsoft ACE OLEDB Provider의 32비트 또는 64비트 버전을 제공하며 여기에서 다운로드할 수 있습니다.</span></span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><a href="http://www.microsoft.com/downloads/en/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&amp;displaylang=en" style="margin:0px;padding:0px;color:rgb(41,112,166);" rel="nofollow">http://www.microsoft.com/downloads/en/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&amp;displaylang=en</a></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>따라서 개발자로서 Office 2010이 64비트 설치되어 있는 컴퓨터(예: CodeFluent Entities </span><strong style="margin:0px;padding:0px;">Access Importer</strong><span> )에서 이 OLEDB 공급자를 사용하는 32비트 응용 프로그램이 있는 경우 32비트 버전의 Office 2010을 설치해야 합니다. 공급자.</span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><br /></p><pre></pre><p>2007 'Office System Driver: 데이터 연결 구성 요소'를 다운받으라고 하는데..</p><p>해당 다운로드 페이지는 404 오류가 뜬다!<span style="font-family:'돋움', Dotum, Helvetica, sans-serif;"> </span></p><p><span style="color:rgb(85,85,85);font-family:'돋움', Dotum, Helvetica, sans-serif;">(</span><a href="https://www.microsoft.com/en-us/download/details.aspx?id=23734" style="font-family:'돋움', Dotum, Helvetica, sans-serif;" rel="nofollow">https://www.microsoft.com/en-us/download/details.aspx?id=23734</a><span style="color:rgb(85,85,85);font-family:'돋움', Dotum, Helvetica, sans-serif;">)</span><span style="background-color:rgb(255,255,255);color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;"> </span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><br /></p><pre></pre><p>각각의 파일을 실행해보면 64비트는 설치가 되지만 32비트 <span style="color:rgb(51,51,51);">AccessDatabaseEngine.exe </span>설치 시 "Microsoft Office SharePoint Designer 2010, Microsoft Office Professional Plus 2010, Microsoft Office Visio 2010" 제품을 삭제하라며 오류가 발생.</p><p><br /></p><p><b>이럴 때는 cmd 명령창을 통해  AccessDatabaseEngine.exe를 실행한다.</b></p><p><b> </b></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><strong style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;">설치 </span></strong><strong style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;">팁</span></strong></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span><span>현재 Office가 설치된 컴퓨터(예: 64의 32)가 아닌 컴퓨터에서 Microsoft ACE OLEDB 공급자 설치를 시작하면 설치가 실패합니다. </span><span>제대로 실행하려면 " </span></span><strong style="margin:0px;padding:0px;">/passive</strong><span> " 인수가 지정된 명령줄에서 실행해야 합니다.</span></p><ul style="margin:0px;padding:0px 0px 10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><li style="margin:0px;padding:0px 0px 0px 20px;list-style-position:inside;"><span>Office 2010 64비트를 실행하는 컴퓨터에 Microsoft ACE OLEDB Provider 32비트를 설치하려면:</span></li></ul><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>$&gt; AccessDatabaseEngine.exe /passive</span></p><ul style="margin:0px;padding:0px 0px 10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><li style="margin:0px;padding:0px 0px 0px 20px;list-style-position:inside;"><span>Office 2010 32비트를 실행하는 컴퓨터에 Microsoft ACE OLEDB Provider 64비트를 설치하려면:</span></li></ul><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>$&gt; AccessDatabaseEngine_X64.exe /passive</span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span style="font-family:'돋움', Dotum, Helvetica, sans-serif;color:rgb(51,51,51);"><br /></span></p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span style="font-family:'돋움', Dotum, Helvetica, sans-serif;color:rgb(51,51,51);">" cd downloads " 입력 후 엔터 &gt; " </span><a href="https://zpxlcm.tistory.com/manage/newpost/AccessDatabaseEngine.exe%20/passive" style="font-family:'돋움', Dotum, Helvetica, sans-serif;" rel="nofollow">AccessDatabaseEngine.exe /passive</a><span style="font-family:'돋움', Dotum, Helvetica, sans-serif;"> "를 입력 후 enter를 치면 설치가 진행된다.</span> </p><img src="../../../data/editor/2311/a0ae3b1b64a0ea405fc5fb17e4c52e04_1700811202_0337.png" title="a0ae3b1b64a0ea405fc5fb17e4c52e04_1700811202_0337.png" alt="a0ae3b1b64a0ea405fc5fb17e4c52e04_1700811202_0337.png" /><br style="clear:both;" /><br /><p>설치가 완료된 후 엑셀 기능을 실행하면 오류가 발생하지 않는다.</p><p style="margin-bottom:10px;color:rgb(85,85,85);font-family:Verdana, 'BitStream vera Sans', Helvetica, sans-serif;background-color:rgb(255,255,255);"><span>도움이 되었기를 바랍니다</span></p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-11-24T15:49:53+09:00</dc:date>
</item>


<item>
<title>[vb.net] Ctrl + C, Ctrl + V 사용하기</title>
<link>http://bbs.program1472.com/bbs/board.php?bo_table=TB_02&amp;amp;wr_id=250</link>
<description><![CDATA[<div></div><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">PreviewKeyDown 이벤트를 활용해서 아주 간단하게 텍스트 박스에서 Ctrl + c, Ctrl + v, Ctrl + a, Ctrl + z ... 등 단축키가 가능하게 설정할 수 있습니다.</span><br /><br /><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> TextBox1_PreviewKeyDown(sender <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, e <span style="color:#a71d5d;">As</span> PreviewKeyDownEventArgs) <span style="color:#a71d5d;">Handles</span> TextBox1.PreviewKeyDown</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> e.Control <span style="color:#a71d5d;">Then</span> e.IsInputKey <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><p><br /><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">내 프로젝트에서 모든 텍스트 박스에 적용하고자 한다면 사용자 정의 컨트롤을 만들어 사용하면 됩니다.</span><br /></p><p><br /></p><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Public</span> <span style="color:#a71d5d;">Class</span> TextBox</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Inherits</span> <span style="color:#066de2;">Windows</span>.<span style="color:#066de2;">Forms</span>.TextBox</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Private</span> Overloads <span style="color:#a71d5d;">Sub</span> OnPreviewKeyDown(e <span style="color:#a71d5d;">As</span> PreviewKeyDownEventArgs)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        MyBase.OnPreviewKeyDown(e)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">If</span> e.Control <span style="color:#a71d5d;">Then</span> e.IsInputKey <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> <span style="color:#066de2;">True</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Class</span></div><p><br /><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);"><br /></span></p><p><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">파일같이 첨부합니다.</span><br style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);" /><br style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);" /><br style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);" /><br style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);" /><span style="color:rgb(34,34,37);font-family:'-apple-system', BlinkMacSystemFont, 'Malgun Gothic', '맑은 고딕', helvetica, 'Apple SD Gothic Neo', helvetica, '나눔바른고딕 옛한글', 'NanumBarunGothic YetHangul', sans-serif;font-size:16px;letter-spacing:-0.3px;background-color:rgb(255,255,255);">또한 스튜디오 버전에 따라 다를 수 있으므로 상황에 따라 아래와 같이 이벤트를 활용해야 할 수도 있습니다.</span><br /></p><p><br /></p><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">Private</span> <span style="color:#a71d5d;">Sub</span> textBox1_KeyDown(<span style="color:#a71d5d;">ByVal</span> sender <span style="color:#a71d5d;">As</span> <span style="color:#066de2;">Object</span>, <span style="color:#a71d5d;">ByVal</span> e <span style="color:#a71d5d;">As</span> KeyEventArgs)</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">Me</span>.OnKeyDown(e)</div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> e.Modifiers <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.Control AndAlso e.KeyCode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.C <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        textBox1.Copy()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> e.Modifiers <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.Control AndAlso e.KeyCode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.V <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.textBox1.Paste()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> e.Modifiers <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.Control AndAlso e.KeyCode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.X <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.textBox1.Cut()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> e.Modifiers <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.Control AndAlso e.KeyCode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.A <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.textBox1.SelectAll()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"> </div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">If</span> e.Modifiers <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.Control AndAlso e.KeyCode <span style="color:#0086b3;"></span><span style="color:#a71d5d;">=</span> Keys.Z <span style="color:#a71d5d;">Then</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;">        <span style="color:#a71d5d;">Me</span>.textBox1.Undo()</div><div style="padding:0 6px;white-space:pre;line-height:130%;">    <span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">If</span></div><div style="padding:0 6px;white-space:pre;line-height:130%;"><span style="color:#a71d5d;">End</span> <span style="color:#a71d5d;">Sub</span></div><p><br /></p><div></div>]]></description>
<dc:creator>하나를하더라도최선을</dc:creator>
<dc:date>2023-11-22T10:57:35+09:00</dc:date>
</item>

</channel>
</rss>
