Java 在字节数组中查找单行注释
是否可以在从文件读入字节数组的一行中找到Java 在字节数组中查找单行注释,java,bytearray,Java,Bytearray,是否可以在从文件读入字节数组的一行中找到/的实例,然后从/剪切到输出行的末尾?我正在努力 FileInputStream fis = new FileInputStream(file); byte[] buffer = new byte[8 * 1024]; int read; while ((read = fis.read(buffer)) != -1) { for (int i = 0; i < read; i++) { if (buffer[i]
/
的实例,然后从/
剪切到输出行的末尾?我正在努力
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[8 * 1024];
int read;
while ((read = fis.read(buffer)) != -1)
{
for (int i = 0; i < read; i++)
{
if (buffer[i] == '//')
{
buffer = buffer[0:i];
}
}
}
FileInputStream fis=新的FileInputStream(文件);
字节[]缓冲区=新字节[8*1024];
int-read;
而((读=fis.read(缓冲区))!=-1)
{
for(int i=0;i
但是我在部分的if(buffer[I]='/'/')
处得到了无效字符常量。是我做错了什么,还是这根本不可能?老派的解决方案
for (int i = 0; i < read-1; i++)
{
(if (buffer[i] == '/') && (buffer[i+1]== '/'))
{
buffer = buffer[0:i];
}
}
for(int i=0;i
'
和'
表示一个字符。因为/
是两个字符,所以这不起作用。必须区分字符和字符串。因此,您必须单独检查字节数组中的两个位置,以确认有两个连续的/
s。是否有不使用BufferedReader的原因?因为“//”不是字符,这是字符“/”。有没有办法检查/
?我确信缓冲区的单个位置不会是“/”,因为这是不可能的。为什么首先要将字符串作为字节读取?使用适当的读卡器读取行,并使用indexOf()
。在我看来,你似乎在试图用JavaDamn编写C代码,这里有一些有趣的反对者。你能解释一下吗?这样我就能改进答案了?