小编sar*_*mar的帖子

bufferedinputstream 中标记读取限制有什么用

我是Java流的新手,我想读取特定的文件内容,然后需要从头开始读取。我创建了一个 BufferedInputStream,但我对 BufferedInputStream.mark(int markLimit) 的文档感到困惑

文档说:

public void mark(int readlimit)
Run Code Online (Sandbox Code Playgroud)

此方法在输入中标记一个位置,可以通过调用 reset() 方法将流“重置”到该位置。参数readlimit是设置标记后在标记失效之前可以从流中读取的字节数。例如,如果调用 mark() 时的读取限制为 10,那么当调用 reset() 方法之前从流中读取了 11 个字节的数据时,则该标记无效,并且不需要流对象实例记住标记。

请注意,此方法可以记住的字节数可以大于内部读取缓冲区的大小。它也不依赖于支持标记/重置功能的从属流。

覆盖: FilterInputStream 类中的标记

参数: readlimit - 标记失效之前可以读取的字节数**

我的代码是:

public class Test {
    public static void main(String[] args) throws IOException {

        File resource = new File("beforeFix.txt");          
        FileInputStream fileInputStream = new FileInputStream(resource);
        BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
        int i = bufferedInputStream.read();
        bufferedInputStream.mark(1);
        i = bufferedInputStream.read();
        i = bufferedInputStream.read();
        i = bufferedInputStream.read();
        i = bufferedInputStream.read();
        i = bufferedInputStream.read();
        i = bufferedInputStream.read();
        i …
Run Code Online (Sandbox Code Playgroud)

java stream bufferedinputstream

6
推荐指数
1
解决办法
7986
查看次数

如何在java中检查LocalDateTime实例是本地还是UTC?

我想查找我的LocalDateTime实例是否包含本地日期和时间或UTC日期和时间(如DateTime.KindC#中的属性)

LocalDateTime date1=LocalDateTime.now(); // it is local

LocalDateTime date2=LocalDateTime.now(ZoneId.of("UTC")); // it is UTC
Run Code Online (Sandbox Code Playgroud)

(date1.getKind() == Kind.UTC || date1.getKind() == Kind.Local)在Java中有类似的东西吗?

java utc java-time localdate

3
推荐指数
1
解决办法
2064
查看次数

在roslyn中解析#if指令代码

我试图使用Roslyn从我的CS文件中提取代码的一部分,我遇到了以下问题.

我的C#文件代码:

    class ConditionalCompilationCode
    {
#if Condition2
            int test2=0; 
#endif
#if Condition1
            int test1=0; 
#endif

        public static void Main1(string[] args)
        {
            int test = 0;
#if Condition1
            test = 1;
#else
            test =2;
#endif

#if Condition2
            test =3;
#else
            test = 4;
#endif

        }
#if Condition2
            private void testmethod1()
        {
            test2 = 1;
        }
#endif
#if !Condition2
        private void testmethod2()
        {
            test1 = 1;
        }
#endif
#if Condition1
        private void testmethod3()
        {
            test1 = 1;
        }
#endif
#if !Condition1
            private …
Run Code Online (Sandbox Code Playgroud)

c# roslyn roslyn-code-analysis

1
推荐指数
1
解决办法
349
查看次数