Pre*_*aur 6 string android json newline kotlin
我试图从 json 字符串中删除 \n 字符,因为它不允许我在文本视图上设置文本。我尝试了不同的示例,例如如何使用 Kotlin 和 jackson ObjectMapper 从 json 中删除属性,但这对我没有帮助。我想使用 Gson 将 json 中的值分配给文本视图,但由于 \n 字符,它变为空。
我也尝试用 .toRegex 方法替换,但它没有帮助我。
这是我的主要活动代码
class MainActivity : AppCompatActivity() {
private var mGitHubApiCall: GithubApiCall? = null
var result: String?= null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
mGitHubApiCall = GitHubCVService.gitHubService
mGitHubApiCall!!.getData().enqueue(object : Callback<GithubResp> {
override fun onResponse(call: Call<GithubResp>, response: Response<GithubResp>) {
if (response.isSuccessful) {
val msg = response.body()?.files?.cvDummyJson?.content
result= msg+""
Log.e("data", result)
val data= Gson().fromJson(result, Data::class.java)
user_name.text= data.name
summary_desc.text= data.summary
} else {
Log.e("data", "error")
}
}
override fun onFailure(call: Call<GithubResp>, t: Throwable) {
Log.e("data", "Fail to call")
}
})
}
Run Code Online (Sandbox Code Playgroud)
我的 json 如下
{\n
"data":{\n
"name":"Maria",\n
"summary":"Likable and dedicated IT consultant with over 5 years of experience in a fast-paced fin-tech company. Eager to offer superb analytical and computer skills to help ABC Inc grow its client base. In previous roles recognized for top company-wide quality satisfaction rating.",\n
"skills":[\n
{\n
"type":"Design Languages",\n
"languages":[\n
"HTML",\n
"XML",\n
"CSS"\n
]\n
},\n
{\n
"type":"Language",\n
"languages":[\n
"Java",\n
"C#",\n
"C++",\n
"Kotlin"\n
]\n
},\n
{\n
"type":"Scripting Language",\n
"languages":[\n
"Javascript"\n
]\n
},\n
{
"type":"Server Language",\n
"languages":[\n
"Php"\n
]\n
},\n
{\n
"type":"Operating System",\n
"languages":[\n
"Windows",\n
"Mac",\n
"Android"\n
]\n
},\n
{\n
"type":"Database",\n
"languages":[\n
"Sqlite",\n
"SQL",\n
"MySQL"\n
]\n
},\n
{\n
"type":"Frameworks", \n
"languages":[\n
"Netbeans",\n
"Eclipse",\n
"ADT-Bundle"\n
]\n
}\n
],\n
"education_bg":[\n
{\n
"position":"Post-Graduate in IBM",\n
"Major":"International Business",\n
"from":"2018",\n
"to":"2019",\n
"institute_name":"Douglas College"\n
},\n
{\n
"position":"Post-Graduate in ICT",\n
"Major":"Information Technology",\n
"from":"2017",\n
"to":"2018",\n
"institute_name":"Douglas College"\n
},\n
{\n
"position":"Bachelors in CSE",\n
"Major":"Computer Science",\n
"from":"2010",\n
"to":"2014",\n
"institute_name":"Douglas College"\n
}\n
]\n
}\n
}
Run Code Online (Sandbox Code Playgroud)
我想将此 json 字符串中的值设置到我的文本视图,该文本视图为空且不显示任何内容。
提前致谢
小智 7
我认为你的 JSON 第一次是字符串,你想使用 Jackson 转换为 JSON。因此,首先您可以将字符串“\n”替换为“”。然后将 JSON 字符串解析为 JSON 对象。检查这个简单的示例并在您的情况下尝试一下。希望它能帮助你。
fun main(){
val myobj="{\nname: \"John\",\n age: 31,\n city: \"New York\"}"
val result=myobj.replace("\n","")
print(result)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19929 次 |
| 最近记录: |