如何在android文本视图中添加c程序

时间:2016-06-16 04:05:57

标签: android

我正在为学生创建“C”应用程序,现在我想添加c文本文件以显示在Android应用程序上,但它显示了一些错误,如何在文本视图中添加大程序或者是否有其他方式来编写代码....(它显示错误,因为textview中有太多参数...)。请帮我解决这个问题...

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

       <ScrollView
            android:id="@+id/ScrollView01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:minWidth="310dp"
            android:scrollbarStyle="outsideOverlay"
            android:scrollbars="vertical">

           <TextView
               android:id="@+id/textView1"
               android:layout_width="match_parent"
               android:layout_height="match_parent"



    android:text="



    #include<stdio.h>
                #include<math.h>
                void main() 
                {
printf("hello world");
              }
         "/>


     </ScrollView>
    </LinearLayout>

2 个答案:

答案 0 :(得分:0)

我建议您将C程序保存在资产文件夹中并使用文件系统从那里加载,然后使用WebView代替Textview,这将很容易

private String readFileInAssetsDir(String filename) {
    BufferedReader br = null;
    StringBuffer sb = new StringBuffer();
    try {
        br = new BufferedReader(new InputStreamReader(getAssets().open(filename)));
        String line;
        while((line = br.readLine()) != null)
            sb.append(line + "\n");
    } catch(Exception e) {

    }
    return sb.toString();
}

然后你可以像webview这样展示它

String plainCd = readFileInAssetsDir("code.c");
String htmlCd = "<pre>" + plainCd + "</pre>";
webView.loadDataWithBaseURL("", htmlCd , "text/html", "utf-8", "");

答案 1 :(得分:0)

<TextView
               android:id="@+id/textView1"
               android:layout_width="match_parent"
               android:layout_height="match_parent"



    android:text="
    #include&lt;stdio.h&gt;
                #include&lt;math.h&gt;
                void main()
                {
printf(&#8220;hello world&#8221;);
              }
         "/>