Path.GetFileNameWithoutExtension

์•ˆ๋…•ํ•˜์„ธ์š” ๊ฐ€์ž… ํ›„ ์ฒ˜์Œ์œผ๋กœ ์ธ์‚ฌ๋“œ๋ฆฌ๋„ค์š”
๋‹ค๋ฆ„์ด ์•„๋‹ˆ๋ผ test[21.06.29].txt ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์„œ ์ €์žฅํ•˜๋Š”๋ฐ
Path.GetFileNameWithoutExtension์„ ์‚ฌ์šฉํ•˜๋ฉด .์„ ํ™•์žฅ์ž๋กœ ์ธ์‹ํ•ด์„œ test[21.06 ์ด๋ ‡๊ฒŒ ์ž˜๋ ค ์˜ค๋”๋ผ๊ตฌ์š” test[21.06.29].txt๋กœ ๋„ฃ์œผ๋ฉด test[21.06.29] ์ด๋ ‡๊ฒŒ ์ œ๊ฐ€ ์›ํ•˜๋Š”๋Œ€๋กœ ๋‚˜์˜ต๋‹ˆ๋‹ค.
์ €์žฅํ• ๋•Œ ํ™•์žฅ์ž๋ฅผ ๋„ฃ๊ณ  ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ์™€ ํŒŒ์ผ๋ช…๋งŒ ๋„ฃ๊ณ  ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”๋ฐ ์˜ˆ์™ธ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„œ
GetFileNameWithoutExtension์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ํŒŒ์ผ๋ช…๋งŒ ์ž…๋ ฅํ•˜๋Š”๊ฒฝ์šฐ์— ๋ฌธ์ œ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.
์ด๋Ÿฐ๊ฒฝ์šฐ ์–ด๋–ป๊ฒŒ ์ ‘๊ทผํ•ด์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

3๊ฐœ์˜ ์ข‹์•„์š”

Path.HasExtension ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•ด๋„ .์„ ํ™•์žฅ์ž๋กœ ์ธ์‹ํ•ฉ๋‹ˆ๋‹ค.

1๊ฐœ์˜ ์ข‹์•„์š”

ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ํ™•์žฅ์ž๊ฐ€ ์–ด๋–ค ํŠน๋ณ„ํ•œ ํ•„๋“œ๋กœ ๊ตฌ๋ถ„๋˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋ƒฅ ํŒŒ์ผ๋ช…์— ์ ์ด ์žˆ์œผ๋ฉด ๋งˆ์ง€๋ง‰ ์ ์„ ๊ธฐ์ค€์œผ๋กœ ๊ทธ ์ดํ›„์˜ ๊ฒƒ์„ ํ™•์žฅ์ž๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ๊ฒƒ๋ฟ์ž…๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, ํŒŒ์ผ ์‹œ์Šคํ…œ ์ž…์žฅ์—์„œ๋Š” โ€œtest[21.06.29].txtโ€ ์ด๋ฆ„๊ณผ โ€œtest[21.06.29]โ€ ์ด๋ฆ„์€ ๊ทธ๋ƒฅ ํŒŒ์ผ๋ช…์ผ ๋ฟ์ด๋ฉฐ, ๊ธฐํƒ€ ํ™•์žฅ์ž๋ฅผ ๊ตฌํ•˜๊ฒ ๋‹ค๋Š” API ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ „์ž๋Š” โ€œ.txtโ€, ํ›„์ž๋Š” ".29]"๊ฐ€ ํ™•์žฅ์ž๊ฐ€ ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์–ด์ฉ” ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํŠน๋ณ„ํ•œ ํ™•์žฅ์ž์— ๋Œ€ํ•œ ์˜ˆ์™ธ๋ฅผ ์Šค์Šค๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

7๊ฐœ์˜ ์ข‹์•„์š”

์•„๋ž˜์ฒ˜๋Ÿผ ์ง์ ‘ ๋งˆ์ง€๋ง‰ ์ ์„ ์ฐพ์•„์„œ ์ž˜๋ผ๋‚ด๋Š” ๋ฐฉ๋ฒ•๋ฐ–์— ์—†๊ฒ ์ฃ .

string fileName = str.Substring(0, str.LastIndexOf(โ€˜.โ€™));
string fileExtension = str.Substring(str.LastIndexOf(โ€˜.โ€™));

1๊ฐœ์˜ ์ข‹์•„์š”