华为仓颉语言编程遇到问题,有一条报错不知道如何修改,我的目的是将联系人信息拼接成字符串,再把字符串转换为字节数组,最后将字节数组写入文件,但是在字符串转换为字节数组的过程中遇到了问题,恳求各位的帮助
package cangjie_project
import std.console.*
import std.fs.*
import std.collection.ArrayList
import std.math.numeric.BigInt
import std.math.numeric.OverflowStrategy
struct Contact {
var name: String = '0'
var phoneNumber: String = '0'
Contact(
name: String ,
phoneNumber: String
) {
this.name=name
this.phoneNumber=phoneNumber
}
}
// 通讯录类
class AddressBook {
private var contacts: ArrayList<Contact> = ArrayList<Contact>()
// 添加联系人
func addContact(name: String, phoneNumber: String) {
let newContact = Contact(name, phoneNumber)
contacts.append(newContact)
println("联系人添加成功!")
}
// 显示所有联系人
func displayContacts() {
if (contacts.isEmpty()) {
println("通讯录为空。")
} else {
println("通讯录中的联系人:")
for (contact in contacts) {
println("姓名: ${contact.name}, 电话号码: ${contact.phoneNumber}")
}
}
}
// 查找联系人
func findContact(name: String) {
var found = false
for (contact in contacts) {
if (contact.name == name) {
println("姓名: ${contact.name}, 电话号码: ${contact.phoneNumber}")
found = true
break
}
}
if (!found) {
println("未找到该联系人。")
}
}
// 删除联系人
func deleteContact(name: String) {
for (i in 0..contacts.size) {
if (contacts[i].name == name) {
contacts.remove(i)
println("联系人删除成功!")
return
}
}
println("未找到该联系人,无法删除。")
}
// 保存到文件
func saveToFile() {
var content = ""
for (contact in contacts) {
content += "${contact.name},${contact.phoneNumber}\n"
}
let contentBytes = content.toBytes()
File.writeTo("通讯录.txt", contentBytes)
}
// 从文件加载
func loadFromFile() {
if (File.exists("通讯录.txt")) {
let content = File.readFrom("通讯录.txt").toString()
for (line in c