Swift URL to String変換

Swift URL 文字列変換

SwiftURLを文字列変換する方法

URLはstructなので文字列は中に入っています。下記はURL作成例です

let _s = "https://mjeld.com"
let _url: URL = URL(string: _s)!

URLがブラウザなどのURL文字列が入っている場合relativeString(相対)取得できます

let _urlString: String = _url.relativeString
print(_urlString)

文字列変換する場合は、absoluteString(絶対)も利用できます

let _urlString: String = _url.absoluteString
print(_urlString)

Swiftで文字列をURLへ変換する

変換と書いていますが 実際にはURLのinit?(string: String)に突っ込んでるだけです

let _s = "https://mjeld.com"
let _url: URL = URL(string: _s)!

ファイルの場合下記のような書き方ができます

let _s = "/home/"
let _url:URL = URL(fileURLWithPath: _s)

この場合absoluteStringすると”file://“がつきます。relativeStringでも同じでした

Xcode Swiftのpath

Xcode 13

ターミナルから「which swift 」すると/usr/bin/swiftにあって下記のようなバージョンでした

/usr/bin/swift --version
Apple Swift version 5.1.3 (swiftlang-1100.0.282.1 clang-1100.0.33.15)
Target: x86_64-apple-darwin20.6.0

Xcode 13のSwiftバージョンって5.5のはずなので Xcodeのアプリ内をさぐりました

ls -al /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

上記にSwiftがありました

lrwxr-xr-x    1 root  wheel         14  9  7 13:51 swift -> swift-frontend
-rwxr-xr-x    1 root  wheel  223954816  9  3 06:16 swift-frontend

swift –versionで確認

swift-driver version: 1.26.9 Apple Swift version 5.5 (swiftlang-1300.0.31.1 clang-1300.0.29.1)
Target: x86_64-apple-macosx11.0

Version 5.5でした

「#if compiler(>=5.5)」で指定してブレークポイントで止まったので5.5になっていました

Swift 5.5

2022 MJELD TECHNOLOGIES. ALL RIGHTS RESERVED