前天开机,结果ubuntu没有像以往一样显示登录框,进入tty重启了几次,还是一样的状况。于是google之,查看了一些贴子后,基本断定是前几天安装的zlib与ubuntu的系统冲突了,只要卸载zlib就可以解决。
卸载zlib的步骤很简单,进入安装zlib的目录,执行sudo make uninstall 即可。
我一直将下载的软件放在/home/athena/文档/software文件夹下,可以在tty下,中文乱码,而且目前我的系统还不能在tty下输入中文。这样,我就不能进入zlib的安装目录。好吧,接下来要做的就是搞定tty下的中文显示及输入。还好,也不难,搜索了一下,按照如下步骤完成了安装。
sudo apt-get install zhcon
sudo apt-get install fbterm
安装成功后就可以显示中文和输入中文了。
输入 zhcon --utf8
可以进行输入法切换。
最后,顺利进入zlib的安装目录,卸载之,重启。可爱的登录框出现~
2011年3月21日星期一
2011年3月10日星期四
文件读取
今天,尝试着从txt文件中读取数据,数据里有字符串和数字,要将其分离。第一次处理这样的文件,在网页上查了很多相关的函数,最后初步完成了数据的读取。
文件中数据格式如下:
nUser = 1000990
这里采用fgets()函数进行按行读取,sscanf 进行字符串分割,将其分割成"nUser"和"1000990",再用atoi()将字符串“1000990”转换成整数。
#include<stdio.h>
#include<stdlib.h>
using namespace std;
int userN, itemN, rateN;
main()
{
FILE *fr = fopen("stats1.txt", "r");
char str[40];
char sn[40];
char sv[40];
int num;
while(fgets(str,40,fr))
{
sscanf(str, "%[^=]=%s",sn, sv);
num = atoi(sv);
printf("%s %s %d\n",sn, sv, num);
}
}
文件中数据格式如下:
nUser = 1000990
这里采用fgets()函数进行按行读取,sscanf 进行字符串分割,将其分割成"nUser"和"1000990",再用atoi()将字符串“1000990”转换成整数。
#include<stdio.h>
#include<stdlib.h>
using namespace std;
int userN, itemN, rateN;
main()
{
FILE *fr = fopen("stats1.txt", "r");
char str[40];
char sn[40];
char sv[40];
int num;
while(fgets(str,40,fr))
{
sscanf(str, "%[^=]=%s",sn, sv);
num = atoi(sv);
printf("%s %s %d\n",sn, sv, num);
}
}
订阅:
博文 (Atom)