user-0 提问: 文件读取：读出来了一些乱码。

回复:
user: user-1
content: http://webdesign.about.com/od/textedit/a/aa122006.htm  Change the format to plain text TextEdit defaults to a rich text format, so you need to switch it to plain text to write HTML Open the Format tab Choose "Make Plain Text" You can also hit Shift-Apple-T to switch to plain text

user: user-0
content: 引用 13 楼 ForestDB 的回复:当然有啊 你还能截图？等我下午去机房吧 ，在这里是win的

user: user-1
content: 当然有啊 你还能截图？

user: user-0
content: 引用 11 楼 ForestDB 的回复:打开文件另存为“纯文本文件”。 在 mac中没有这个纯文本文件

user: user-1
content: 打开文件另存为“纯文本文件”。

user: user-0
content: 引用 8 楼 ForestDB 的回复:rtf的内容本来就是 {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 ... 这样的  可以将rtf用文本编辑器打开看。 看 ，能看到。但是无法去掉

user: user-0
content: 引用 7 楼 turingo 的回复:纯文本文件是不可能的。  [quote=引用 6 楼 lc10915819 的回复:] [quote=引用 2 楼 turingo 的回复:] rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  而且我是用文本编辑，已经去掉了那些格式修饰符，但是还是能读出来[/quote][/quote]  哪有什么办法去掉这修饰么？

user: user-1
content: rtf的内容本来就是 {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 ... 这样的  可以将rtf用文本编辑器打开看。

user: user-2
content: 纯文本文件是不可能的。  引用 6 楼 lc10915819 的回复:[quote=引用 2 楼 turingo 的回复:] rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  而且我是用文本编辑，已经去掉了那些格式修饰符，但是还是能读出来[/quote]

user: user-0
content: 引用 2 楼 turingo 的回复:rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  而且我是用文本编辑，已经去掉了那些格式修饰符，但是还是能读出来

user: user-2
content: 直接改文件的后缀名？  引用 4 楼 lc10915819 的回复:[quote=引用 2 楼 turingo 的回复:] rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  引用 2 楼 turingo 的回复:rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  我其实已经把rtf文件格式改成了text格式，但是还是带出来一样的内容，这事怎么回事呢[/quote]

user: user-0
content: 引用 2 楼 turingo 的回复:rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  引用 2 楼 turingo 的回复:rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  我其实已经把rtf文件格式改成了text格式，但是还是带出来一样的内容，这事怎么回事呢

user: user-3
content: 引用 2 楼 turingo 的回复:rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  [quote=引用 楼主 lc10915819 的回复:]  #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？[/quote]  ++

user: user-2
content: rtf文件本身就包含许多格式信息，比如字体颜色表格什么的，不是纯文本文件，直接读有乱码很正常。  引用 楼主 lc10915819 的回复: #include <stdio.h>  int main(int argc, const char * argv[]) {     FILE *fp;     int ch;     fp = fopen("/Users/lichan/Desktop/name.rtf", "rb");                  while ((ch=getc(fp)) != EOF)         {             putchar(ch);          }                    return 0; }       文件内容：lichgan isdadafadad  读出来的内容： {\rtf1\ansi\ansicpg936\cocoartf1187\cocoasubrtf370 {\fonttbl\f0\fswiss\fcharset0 Helvetica;} {\colortbl;\red255\green255\blue255;} \paperw11900\paperh16840\margl1440\margr1440\vieww10800\viewh8400\viewkind0 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural  \f0\fs24 \cf0 lichgan isdadafadad}  请问这是怎么回事呢？

user: user-0
content: 文本模式和二进制模式读出来的内容一样。把rtf格式转化为 text格式还是这个样子。

user: user-0
content: 引用 17 楼 lm_whales 的回复:用RichEdit控件读取，存储为文本格式即可。  使用 touch  filename 吧。看来只有这样了。楼上的都给分。

user: user-4
content: 用RichEdit控件读取，存储为文本格式即可。

user: user-5
content: 推荐使用WinHex软件查看硬盘或文件或内存中的原始字节内容。  电脑内存或文件内容只是一个一维二进制字节数组及其对应的二进制地址； 人脑才将电脑内存或文件内容中的这个一维二进制字节数组及其对应的二进制地址的某些部分看成是整数、有符号数/无符号数、浮点数、复数、英文字母、阿拉伯数字、中文/韩文/法文……字符/字符串、汇编指令、函数、函数参数、堆、栈、数组、指针、数组指针、指针数组、数组的数组、指针的指针、二维数组、字符点阵、字符笔画的坐标、黑白二值图片、灰度图片、彩色图片、录音、视频、指纹信息、身份证信息……