不从服务器上存在的 .txt 文件中读取文本[重复]

Posted

技术标签:

【中文标题】不从服务器上存在的 .txt 文件中读取文本[重复]【英文标题】:Not Reading text from a .txt file which is present on server [duplicate] 【发布时间】:2012-06-10 21:51:13 【问题描述】:

可能重复:Not Reading text from server

我正在尝试从服务器上存在的 .txt 文件中读取文本,但我的代码没有从我使用的 android 版本 2.1 的文件中读取文本,请您告诉我如何处理异常以便发现错误。

public void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    TextView tv= new TextView(this);
    StringBuilder content = new StringBuilder();


    try 
        URL url = new URL("http://linktomywebsite/textfile.txt");
        BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
        String str;
        while ((str = in.readLine()) != null) 
            content.append(str +"\n");
            tv.setText(content);
        
        in.close();
     catch (MalformedURLException e)
     catch (IOException e) 
        e.printStackTrace();
    


;        

【问题讨论】:

您应该发布您的 logcat 错误日志,以便我们帮助您找出问题所在 【参考方案1】:
 TextView tv= new TextView(this);

这将创建一个独立于您当前可见布局的新 TextView。

您不会将这个新创建的 TextView 放在布局中的任何位置,因此不会显示包含在该 TextView 中的结果

假设您的代码可以从您的网站检索文本(对我来说看起来不错),这可能就是您没有看到任何结果的原因。

尝试调用

setContentView(tv);

在你的try catch 之后看看是否有效

【讨论】:

只是添加,如果您尝试将其添加到布局中已有的 TextView 中,请更改 TextView tv= new TextView(this);到 TextView tv= (TextView)findViewById(R.id.yourTextViewName);否则请参考您的布局,然后调用 yourLayout.addView(tv); 替换 TextView tv= (TextView)findViewById(R.id.yourTextViewName); ,它仍然没有显示来自服务器的任何文本。【参考方案2】:

您必须在主布局中链接您现有的 TextView

tv = (TextView) findViewById (R.id.myTextView);

【讨论】:

以上是关于不从服务器上存在的 .txt 文件中读取文本[重复]的主要内容,如果未能解决你的问题,请参考以下文章

读取本地文本文件 JavaScript [重复]

jQuery自动完成不从文本加载源

读取战争档案中的文本文件[重复]

C++ 和读取大型文本文件

C#从文本文件中读取路径说路径不存在[重复]

急求:如何用python删除文本中的重复行?