txt文件阅读挺不方便的,对于超长的行,还得自动换行,行与行之间间隔太小,背景为白色
下面的程序能够批量把指定目录下的txt转化为htm文件,htm文件用浏览器打开后,根据txt文件的换行一样,且能够自动换行,字号为16px,行高为22px,背景色为淡蓝

 

   
   
   
   
  1. /*  
  2.     批量把某目录下的所有.txt文件转化为对应的htm文件,该htm文件包含有方便阅读的css样式  
  3.     生成的htm文件放在同一目录下htm目录下  
  4.     参数1:要转化的目录的路径  
  5.     执行 php txt2htm.php "C:\\txt\\"  
  6.      php txt2htm.php "/tmp/txt/"  
  7.      php txt2htm.php .  
  8. */ 
  9.  
  10. $basedir=$argv[1];  
  11. if(!$basedir||!is_dir($basedir))  
  12. {  
  13.     die("please input dir.\n");  
  14. }  
  15. //改变工作目录  
  16.  
  17. chdir($basedir);  
  18.  
  19. $d = dir(".");  
  20. //创建输出目录  
  21.  
  22. $outputdir="./htm/";  
  23. if(!is_dir($outputdir)){  
  24.     mkdir($outputdir, 0700);  
  25. }  
  26. //判断是否创建成功  
  27.  
  28. if(!is_dir($outputdir))  
  29. {  
  30.     die("cannot mkdir.\n");      
  31. }  
  32. while (false !== ($entry = $d->read()))   
  33. {  
  34.     //判断是不是文件  
  35.  
  36.     if(is_file($entry))  
  37.     {  
  38.         $filename=strtolower($entry);  
  39.             //判断是不是txt文件  
  40.  
  41.         if(stristr($filename,".txt"))  
  42.         {  
  43.             $wfile=$outputdir.basename($filename,".txt").".htm";  
  44.             //若是文件已经存在,则跳过  
  45.  
  46.             if(file_exists($wfile))  
  47.             {  
  48.                     echo "**********".$wfile." is exists ,skip this file**************\n";  
  49.                     continue;      
  50.             }      
  51.             if($str=file_get_contents($entry))  
  52.             {  
  53.                 //写入样式,和换行  
  54.  
  55.                 $str="".str_replace("\n","\n
    "
    ,$str);  
  56.                 if($fp=fopen($wfile,"w"))  
  57.                 {  
  58.                      if (fwrite($fp,$str) === FALSE) {  
  59.                           //写入失败  
  60.  
  61.                  echo $wfile." cover fail! fwrite fail\n";       
  62.                     }else{  
  63.                             echo $wfile." cover success!\n";      
  64.                     }  
  65.                     fclose($fp);  
  66.                 }else{  
  67.                     //创建文件失败  
  68.  
  69.                     echo $wfile." cover fail! fopen fail\n";  
  70.                 }  
  71.             }else{  
  72.                 //读取失败  
  73.  
  74.                 echo $wfile." cover fail! file_get_contents fail\n";      
  75.             }      
  76.         }  
  77.   }  
  78. }  
  79. $d->close();  
  80. ?> 
运行:

 

效果:

把txt文件转为htm_第1张图片