首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

IO流读取文章的有关问题

2013-07-09 
IO流读取文章的问题我在struts2的一个项目中,需要读取一篇文章,我数据库里面存放的是文章的路径,有以下代

IO流读取文章的问题
我在struts2的一个项目中,需要读取一篇文章,我数据库里面存放的是文章的路径,有以下代码,在j2se里能正确读取出文章,但是放在struts中就不能读取了。而且封装的方法根本就不执行。请问各位大牛这是怎么回事儿
代码:

public String getArticleContent(String path)
{
File file = new File(path);
String read = "";
StringBuilder sb = new StringBuilder();
InputStreamReader isr = null;
BufferedReader br = null;
try
{
isr = new InputStreamReader(new FileInputStream(file));
br = new BufferedReader(isr);
while ((read = br.readLine()) != null)
{
sb.append(read + "\n");
}
} catch (Exception e)
{
} finally
{
if (br != null)
{
try
{
br.close();
} catch (IOException e)
{
e.printStackTrace();
}
}
if (isr != null)
{
try
{
isr.close();
} catch (IOException e)
{
e.printStackTrace();
}
}
}
return sb.toString();
}


调用该方法的地方,以及前后代码:
if (res != null)
{
if (res.next())
{
title = res.getString("title");
content = getArticleContent(res
.getString("article_content"));
list.add(new ArticleBean(title, content));
System.out.println("文章路径----->>>"
+ res.getString("article_content"));
System.out.println(content);
} else
{
list.add(new ArticleBean("没有文章", null));
}
}
io流 Java 数据库
[解决办法]
你确定这个 getArticleContent 方法没执行么?这个应该是没有理由的,我估计
是报错了,然后你捕捉到 没有 打印错误信息
  } catch (Exception e)
        {
        } finally。。

还有一个 你的读取文件的逻辑为什么要放在对 ResultSet 的遍历里面,我建议你先拿出来 转成bean ,把数据库连接都关掉,然后在去读文件内容。
------解决方案--------------------


引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

嗯,有没有报错呢?是路径找不到还是怎么了?

建议将查询出来的字符串路径打印出来调试下,或者debug一步步跟代码,看看有啥问题。

没有报错哦,路径打印出来了的,debug了一下好像这个方法没有执行到。

没执行,是不是在执行前做了判断呢?看看判断条件是否有问题,或者少了!之类的

content = getArticleContent(res.getString("article_content"));
这句代码就是调用那个方法的。可以看出来,没有判断啊。

5L说的有道理,把异常堆栈打印一下,LZ把所有的
 catch (Exception e)
        {
        }
改成
catch (Exception e)
                {
                    e.printStackTrace();
                }

热点排行