在android中处理带下划线/粗体/斜体的文本

时间:2015-01-05 19:25:36

标签: java android

我正在使用jxl api处理excel文件中的内容并将它们加载到json字符串中。然后我解析json字符串并在屏幕上的各种TextView中显示内容。如果excel有任何带下划线/粗体/斜体的文本,则它在TextView中没有相应显示。有人可以建议如何确保在excel中使用下划线/粗体/斜体的任何文本也会在textview中显示。 下面是我用来处理excel文件中的字符串的代码

w = Workbook.getWorkbook(inputWorkbook);
Sheet sheet = w.getSheet(0);
Cell storyNameCell = sheet.getCell(1,1);
String Title = storyNameCell.getContents();
//get more cells into Strings
//form the json string from all the String contents above

这就是我将上面的JSON字符串保存到android设备上的本地文件

的方法
    String FILENAME = getString(R.string.app_name)+"_"+storyTitle;
      FileOutputStream output = openFileOutput(FILENAME,MODE_PRIVATE);
    OutputStreamWriter writer = new OutputStreamWriter(output, "UTF-8");
        writer.write(jObjStoryTitle.toString());
        writer.flush();
        writer.close();

最后,我从文件中获取任何JSON字符串,以便在用户请求时显示。

    BufferedReader in = new BufferedReader(new InputStreamReader(this.getBaseContext().openFileInput( quizFileName), "UTF-8"));
        while ((str = in.readLine()) != null)
            fileContent.append(str);
        fileString = new String(fileContent);
        jObjStoryTitle = new JSONObject(fileString);

1 个答案:

答案 0 :(得分:0)

我终于能够解决它了。这就是我做的。 -used apache POI api用于在我的Android应用程序中读取xls文件。 Jxl api没有帮助,因为它无法识别嵌入在单元格中文本部分内的任何字体/样式。 - 因此,使用Apache-POI,我可以找出文本的哪一部分包含带下划线的字符。 - 然后我在该部分之前/之后嵌入了html标签 - 然后使用Html对象在Textview中显示如下

myTextView.setText(Html.fromHtml(underlinedText));