read(bytes)

ServletContext context = event.getServletContext();
String filePath = context.getRealPath("/ch04/count.txt");
FileInputStream fis = null ;
BufferedInputStream bis = null ;
DataInputStream dis = null ;
StringBuffer sb = new StringBuffer() ;
byte[] bytes = new byte[1024];
try {
int c = 0 ;
fis = new FileInputStream(filePath) ;
dis = new DataInputStream(fis);
// while((c=dis.read())!=-1)
// {
// sb.append((char)c);
// System.out.println((char)c+"*");
// }
while((c=dis.read(bytes))!=-1)
{
String str = new String(bytes,0,c);
sb.append(str);

}
fis.close();
dis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("初始化listener");
System.out.println(filePath) ;
System.out.println(sb.toString()+"------------------");
### ABAP 中读取磁盘字节的操作 在 ABAP 中,可以通过多种方式实现从磁盘读取数据的功能。一种常见的方式是利用 `OPEN DATASET` 和 `READ DATASET` 来处理二进制文件。 #### 使用 OPEN DATASET 和 READ DATASET 读取文件 下面是一个简单的例子来展示如何通过这些命令读取磁盘上的文件并将其内容存储在一个内部表中: ```abap DATA: lv_file_name TYPE string VALUE 'C:\path\to\your\file.bin', lv_mode TYPE c VALUE 'B', " Binary mode lt_data TYPE TABLE OF tline, ls_line LIKE LINE OF lt_data. FIELD-SYMBOLS: <fs_buffer> TYPE xstring. " Open file for reading in binary mode CALL FUNCTION 'GUI_UPLOAD' EXPORTING filename = lv_file_name IMPORTING filelength = DATA(lv_length) TABLES data_tab = lt_data. IF sy-subrc EQ 0. LOOP AT lt_data INTO ls_line. CONCATENATE ls_line WITH SPACE INTO DATA(lv_concatenated). ENDLOOP. " Convert concatenated line into XSTRING format lv_concatenated = cl_abap_codepage=>convert_to( val = lv_concatenated codep = cl_abap_codepage=>codepage_1252 ). " Assign converted value to field symbol as byte sequence (XSTRING) ASSIGN lv_concatenated TO <fs_buffer>. IF sy-subrc NE 0. WRITE: / 'Error assigning buffer'. ELSE. WRITE: / 'Successfully read ', lv_length, 'bytes.'. ENDIF. ELSE. WRITE: / 'Failed to open or read the specified file.'. ENDIF. ``` 此代码片段展示了如何打开指定路径下的二进制文件,并逐行读入内存中的内表 `lt_data` 。之后将所有行连接起来转换成字符串形式再进一步转为十六进制串表示法以便于后续处理[^1]。 需要注意的是,在实际应用环境中应当考虑异常情况的发生以及资源释放等问题;此外还需注意操作系统权限设置可能影响程序执行效果。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值