Notice
Recent Posts
Recent Comments
Link
투케이2K
66. (swift/xcode) [유틸 파일] string to byte (data) 변환 수행 본문
[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[소스 코드]
// MARK: - [String to Byte (Data) 변환 수행 메소드]
func stringToByte(string: String) -> Data {
/*
// -----------------------------------------
[stringToByte 메소드 설명]
// -----------------------------------------
1. string 문자열 데이터를 byte (data) 값으로 반환
// -----------------------------------------
2. 호출 방법 : C_Util().stringToByte(string: "hello")
// -----------------------------------------
3. 리턴 반환 : Data 값 반환 실시
// -----------------------------------------
*/
// [초기 리턴 데이터 변수 선언 실시]
var returnData : Data = Data()
var byteStr = ""
// [인풋 데이터 널 체크 수행 실시]
if string != nil
&& string.count>0
&& string != ""
&& string.trimmingCharacters(in: .whitespacesAndNewlines) != ""
&& string.trimmingCharacters(in: .whitespacesAndNewlines) != "null"
&& string.isEmpty == false {
// [리턴 변수에 삽입 실시]
returnData = string.data(using: .utf8)!
// [바이트 배열 값 확인 실시]
byteStr = "["
for i in stride(from: 0, through: returnData.count-1, by: 1) {
byteStr += String(describing: returnData[i]) // [개별 바이트 값을 삽입]
if i != returnData.count-1 { // [배열 형태로 찍기 위함]
byteStr += ", "
}
}
byteStr += "]"
}
// [로그 출력 실시]
print("")
print("====================================")
print("[C_Util >> stringToByte() :: string 문자열 데이터를 byte (data) 값으로 반환 실시]")
print("-------------------------------")
print("input :: \(string)")
print("-------------------------------")
print("return [length] :: \(returnData)")
print("-------------------------------")
print("return [data] :: \(byteStr)")
print("====================================")
print("")
// [리턴 데이터 반환 실시]
return returnData
}
// MARK: - [Byte (Data) To String 변환 수행 메소드]
func byteToString(data: Data) -> String {
/*
// -----------------------------------------
[byteToString 메소드 설명]
// -----------------------------------------
1. Byte (Data) 데이터를 String 값으로 반환
// -----------------------------------------
2. 호출 방법 :
var dataValue : Data = Data()
dataValue.append(104)
dataValue.append(101)
dataValue.append(108)
dataValue.append(108)
dataValue.append(111)
C_Util().byteToString(data: dataValue)
// -----------------------------------------
3. 리턴 반환 : String 값 반환 실시
// -----------------------------------------
*/
// [초기 리턴 데이터 변수 선언 실시]
var returnData = ""
var byteStr = ""
// [인풋 데이터 널 체크 수행 실시]
if data != nil
&& data.count>0
&& data.isEmpty == false {
// [리턴 변수에 삽입 실시]
returnData = String(decoding: data, as: UTF8.self)
// [바이트 배열 값 확인 실시]
byteStr = "["
for i in stride(from: 0, through: data.count-1, by: 1) {
byteStr += String(describing: data[i]) // [개별 바이트 값을 삽입]
if i != returnData.count-1 { // [배열 형태로 찍기 위함]
byteStr += ", "
}
}
byteStr += "]"
}
// [로그 출력 실시]
print("")
print("====================================")
print("[C_Util >> byteToString() :: Byte (Data) 데이터를 String 값으로 반환 실시]")
print("-------------------------------")
print("input [length] :: \(data)")
print("-------------------------------")
print("input [byte] :: \(byteStr)")
print("-------------------------------")
print("return [string] :: \(returnData)")
print("====================================")
print("")
// [리턴 데이터 반환 실시]
return returnData
}
[결과 출력]
반응형
'Swift' 카테고리의 다른 글
Comments