(小弟自学Azure,文中有不正确之处,请路过各位大神指正。)

  网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少。这次由于公司项目需要使用Azure,所以对Azure的一些学习心得做下笔记,文中不正确地方请大家指正。

  Azure Blob 存储是用于存储大量非结构化对象数据(例如文本或二进制数据)的服务,这些数据可通过 HTTP 或 HTTPS 从世界各地进行访问。 可以使用 Blob 存储向外公开数据,或者私下存储应用程序数据。

  Blob 存储的常见用途包括:

      • 直接向浏览器提供图像或文档
      • 存储文件以供分布式访问
      • 对视频和音频进行流式处理
      • 存储数据以用于备份和还原、灾难恢复及存档
      • 存储数据以供本地或 Azure 托管服务执行分析

Package

  com.microsoft.azure.storage.blob

Mean

  提供一个输入流来读取给定的blob资源。

Inherited 

  java.lang.Object ————> InputStream ————> BlobInputStream

Constructors 

  protected BlobInputStream(final CloudBlob parentBlob, final AccessCondition accessCondition, final BlobRequestOptions options, final OperationContext opContext)

    1. parentBlob——表示这个流与之关联的blob。
    2. accessCondition——blob的访问条件
    3. Options——表示该请求的任何其他选项。
    4. opContext——用于跟踪操作执行的操作上下文对象。

Method

    1. public synchronized int available()

   返回可以从该输入流读取(或跳过)的字节数的估计数,而不会在下一次调用此输入流的方法时阻塞。下一个调用可能是相同的线程或其他线程。这许多字节的单个读或跳过不会阻塞,但是可以读取或跳过更少的字节。

    2. public synchronized void close()

 关闭此输入流并释放与流相关的任何系统资源。

    3. public synchronized void mark(final int readlimit)

   标记这个输入流中的当前位置。对重置方法的后续调用将在最后一个标记的位置重新定位该流,以便随后的读取重新读取相同的字节。

   Readlimit——表示在标记位置无效之前可以读取的最大字节限制。

    4. public boolean markSupported()

   测试这个输入流是否支持标记和重置方法。是否支持标记和重置是特定输入流实例的不变属性。InputStream的marksupport方法返回false。

    5. public synchronized void reset()

   将此流重新定位到在此输入流上最后调用标记方法时的位置。注意重新定位blob读取流将禁用blob MD5检查。

    6. public synchronized long skip(final long n)

   跳过此输入流并丢弃n字节的数据。由于各种原因,skip方法可能会跳过一些较小的字节数,可能是0。这可能是由许多条件造成的;在n字节被跳过之前到达文件的末尾只是一种可能。跳过的实际字节数将返回。

   如果n是负数,则不会跳过任何字节。注意重新定位blob读取流将禁用blob MD5检查。

    7. public int read()

   从输入流中读取下一个字节的数据。值字节在0到255范围内作为整数返回。如果没有可用的字节,因为已经到达了流的末端,则返回值-1。此方法将阻塞直到输入数据可用,检测到流的末尾,或抛出异常。

    8. public int read(final byte[] b)

   从输入流中读取一些字节并将它们存储到缓冲区数组中。返回实际读取的字节数为整数。这个方法会阻塞直到输入数据可用,检测到文件的结束,或者抛出异常。

   如果长度为0,则不读取字节,返回0;否则,就会尝试读取至少一个字节。如果没有字节可用,因为流位于文件的末尾,则返回值-1;否则,读取并存储至少一个字节。

    9. public int read(final byte[] b, final int off, final int len)

   从输入流读取数据字节为字节数组。读取字节数,但可以读取较小的数字。实际上读取的字节数作为一个整数返回。这个方法会阻塞直到输入数据可用,检测到文件的结束,或者抛出异常。

   如果是零,则不读取字节,返回0;否则,就会尝试读取至少一个字节。如果没有字节可用,因为流在文件的末尾,则返回值-1;否则,读取并存储至少一个字节。第一个字节读取被存储到元素中,下一个字节被存储到元素中。

b——表示数据读取的缓冲区的字节数组。

off——表示数据写入的字节数组中的开始偏移量的整数。

  len——表示要读取的最大字节数的整数。

Azure系列2.1.4 —— BlobInputStream的更多相关文章

  1. 初码-Azure系列-迁移PHP应用至Azure的一些实践记录和思考

    最近客户在逐步迁移应用从阿里云到Azure,这次又轮到一个PHP+MySQL应用了,顺便也记一下流水账. 需求:迁移部署在阿里云上的ECS服务器(系列2,IO优化+2核4G+50G的SSD云盘+10M ...

  2. 初码-Azure系列-记一次MySQL数据库向Azure的迁移

    初码Azure系列文章目录 还在继续给客户迁移不同的系统到Azure,这一次是一个系统的MySQL数据库要迁移,将迁移过程记录一下 原系统环境 数据库版本:MySQL Community Editio ...

  3. 初码-Azure系列-文章目录

    系统迁移 初码-Azure系列-记一次MySQL数据库向Azure的迁移 初码-Azure系列-迁移PHP应用至Azure的一些实践记录和思考 初码-Azure系列-记一次从阿里云到Azure的迁移和 ...

  4. 初码-Azure系列-如何在控制面板中选择中文版操作系统

    之前在文章<初码-Azure系列-记一次从阿里云到Azure的迁移和部署>中说到,默认的Windows Server 2016操作系统是英文版,后来摸索出中文版的方法,如下:

  5. 初码-Azure系列-存储队列的使用与一个Azure小工具(蓝天助手)

    初码Azure系列文章目录 将消息队列技术模型简化,并打造成更适合互联网+与敏捷开发的云服务模式,好像已经是行业趋势,阿里云也在推荐使用消息服务(HTTP协议为主)而来替代消息队列(TCP协议.MQT ...

  6. 【初码干货】【Azure系列】1、再次感受Azure,体验Windows Server 2016并部署BlogEngine.NET

    上个月末,在某人的建议下,重新注册了一个1元试用账户(包含1个月期限的1500元订阅),并充值了1000元转为了正式账户,相当于1000元得到了2500的订阅,于是又一次开启了Azure之旅. 在这不 ...

  7. Azure系列2.1.9 —— CloudBlob

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...

  8. Azure系列2.1.7 —— BlobRequestOptions

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...

  9. Azure系列2.1 —— com.microsoft.azure.storage.blob

    网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习心得做下笔记,文中不正确地方请大家指正. Azure Blob ...

随机推荐

  1. 【Teradata System】How Teradata uses MPP Systems

    内存分配 内存初始化时将分配给操作系统和Vprocs,内存不使用部分的90%做为FSG (File Segment Cache) ,由PDE对FSG进行管理. FSG Cache:缓存常驻内存的dat ...

  2. C. Playlist Educational Codeforces Round 62 (Rated for Div. 2) 贪心+优先队列

    C. Playlist time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ...

  3. java语言的特征

    运行时:反射与内省+派发机制: 额外的多态支持:注解: 语法改进:内部类与匿名类.匿名函数: 线程支持改进: 类加载机制? aop的支持: bean?

  4. selenium之选项卡管理

    在使用selenium管理浏览器的时候遇到一些小问题,现将这些小问题作一下总结: (1)browser是什么? from selenium import webdriver browser = web ...

  5. python3 day04 大纲

    上节课内容回顾: 1. 小数据池 存储数据. 共享小数据池 int,str, bool == 和 is区别: == 判断的是两边的值 is 左右两端的内存地址 2. 深浅拷贝 1. = 没有创建新对象 ...

  6. Spring Security(二十四):6.6 The Authentication Manager and the Namespace

    The main interface which provides authentication services in Spring Security is the AuthenticationMa ...

  7. 20175234 数据库MySQL(课下作业)

    20175234 数据库MySQL(课下作业) 内容: 1.下载附件中的world.sql.zip, 参考http://www.cnblogs.com/rocedu/p/6371315.html#SE ...

  8. [LOJ#2386]. 「USACO 2018.01 Platinum」Cow at Large[点分治]

    题意 题目链接 分析 假设当前的根为 rt ,我们能够在奶牛到达 \(u\) 之时拦住它,当且仅当到叶子节点到 \(u\) 的最短距离 \(mn_u \le dis_u\) .容易发现,合法的区域是许 ...

  9. ASP.NET Core 发布之后通过命令控制监听地址和环境变量

    添加Command支持 新建一个ASP.NET Core 项目,打开Program.cs 添加下面的代码: public class Program { public static void Main ...

  10. 朱晔的互联网架构实践心得S1E1:Pilot

    朱晔的互联网架构实践心得S1E1:Pilot 最近几年写博客确实写得少了,初出茅庐的时候什么都愿意去写,现在写一点东西之前会反复斟酌是否有价值.工作十几年了,做了N多个互联网系统,业务涉及教育.游戏. ...