我想获取文件的increment id,代码如下:
// get increment id
func GetID() uint64 {
appIdLock.Lock()
defer appIdLock.Unlock()
f, err := os.OpenFile(idPath, os.O_RDWR, 0666)
if err != nil {
return 0
}
defer f.Close()
// Read
bufferTemp := make([]byte, 16)
bufferResult := make([]byte, 0)
for {
n, _ := f.Read(bufferTemp)
if n > 0 {
bufferResult = append(bufferResult, bufferTemp[:n]...)
} else {
break
}
}
if len(bufferResult) == 0 {
return 0
}
s := common.StringToUint64(string(bufferResult))
s += 1
// Write (how to cover?)
f.WriteString(strconv.FormatUint(s, 10))
return s
}
f.WriteString 函数被追加,例如,我的文件内容:123,运行 GetID() 我希望我的文件内容是:124,但结果是:123124
最佳答案
在不更改大部分代码的情况下,这里的解决方案可以正常工作并执行您想要执行的操作。没有 loops 或不止一个 byte slice 。
func GetID() uint64 {
appIdLock.Lock()
defer appIdLock.Unlock()
// Added + os.O_CREATE to create the file if it doesn't exist.
f, err := os.OpenFile(idPath, os.O_RDWR + os.O_CREATE, 0666)
if err != nil {
fmt.Println(err)
return 0
}
defer f.Close()
// Know file content beforehand so I allocate a suitable bytes slice.
fileStat, err := f.Stat()
if err != nil {
fmt.Println(err)
return 0
}
buffer := make([]byte, fileStat.Size())
_, err = f.Read(buffer)
if err != nil {
fmt.Println(err)
return 0
}
s, _ := strconv.ParseUint(string(buffer), 10, 64)
s += 1
// The Magic is here ~ Writes bytes at 0 index of the file.
_, err = f.WriteAt([]byte(strconv.FormatUint(s, 10)), 0)
if err != nil {
fmt.Println(err)
return 0
}
return s
}
希望对您有所帮助!
关于golang File WriteString 封面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45808576/
我想要一个div有一个覆盖整个div的背景图像,但是当浏览器窗口大小发生变化时,不要缩小太多,而是将焦点集中在图像上的一个点上。一个很好的例子是this,但是当您缩小窗口尺寸时,它会聚焦于黄色标志而不是图像的中间。这种东西有插件或者教程吗?我确信使用jquery和css图像Sprite我可以想出一些东西,但我宁愿使用经过验证的插件或技术,而不是一起破解一些东西。 最佳答案 好吧,我想这远没有我想象的那么难,但是我想要的行为可以简单地通过这样做来实现:{background:url('http://farm8.staticflickr
我有一个mp3文件,当我用windowsmediaplayer阅读它时,它有专辑的封面,所以我想知道是否有办法在javascript或jQuery中获取该封面 最佳答案 阅读此URL的更多信息:http://www.richardfarrar.com/embedding-album-art-in-mp3-files/您想要的是使用ID3header,其中存储了艺术家数据和更多信息。图像也可以存储在这些标题中。可能这也在您拥有的mp3文件中完成。类似https://github.com/aadsm/JavaScript-ID3-Rea
我正在使用GraphAPI的FBjavascript驱动程序来允许用户从他们的Facebook帐户中选择照片。他们第一次连接时,系统会提示他们登录:FB.login(function(res){if(res.status=='connected'){auth=res.authResponse;//cacheauthresponsegetAlbums();}});如果成功,我缓存返回的auth对象并立即获取用户的相册:functiongetAlbums(){FB.api('/me/albums',function(res){albums=res.data;});}使用返回的对象,我遍历相
我有一个mp3文件,当我将它加载到媒体播放器中时,媒体播放器会显示专辑的封面。我假设封面在文件的元数据中,所以我想知道是否有办法在golang中找到该封面。如何为mp3文件设置封面? 最佳答案 此属性的名称是ID3.您可以使用库dhowden/tag做这个。m,err:=tag.ReadFrom(f)iferr!=nil{log.Fatal(err)}log.Print(m.Format())//Thedetectedformat.log.Print(m.Title())//Thetitleofthetrack(seeMetadat
我处理过这些文档,我需要编辑现有代码以映射数据库中的字段。XSL文档已经有了模板和区域。我的目标是在模板的任何边距出现之前添加一个封面。代码如下所示:然后页面开始为紧随其后的是任何其他地区等。我查看了如何插入一些封面,但尝试时我总是遇到错误,我使用的只是Notepad++,每次测试时都会渲染pdf,所以这变得非常耗时过程。我决定只用一张图片作为封面以节省时间。我知道这是一个FOP引擎1.0。 最佳答案 这里有一个简单的例子可以帮助您完成这个过程:IamaCoverPage,formatmehoweveryouwish!Iamther
我需要使用PHPSDK(Facebook)获取专辑封面照片。我尝试:https://graph.facebook.com/[ALBUM_ID]/picture?type=album,但我得到一个默认图像...例如...获取用户https://graph.facebook的个人资料图片.com/[USER_ID]/picture?type=square谁能告诉我获取相册封面照片的正确方法。谢谢。 最佳答案 您可以只使用FQL,这是我的首选方法并且提供了很大的灵active。此代码示例应该是您所需要的:$album_id='646415
我可以使用php成功地从我的mp3应用程序中获取mp3ID3标签。我留下了一个巨大的BLOB。我敢肯定这很简单,但我只需要在正确的方向上提供一点帮助。我想要结束的是(BLOBDATACORRECTED):$media_year=implode($ThisFileInfo['comments_html']['year']);$media_genre=implode($ThisFileInfo['comments_html']['genre']);$media_jpg=[BLOBDATA];(我知道这对编程没有意义,但你明白了。前两行对我来说很好,但我不知道如何从ID3标签中获取BLOBD
谁能告诉我是否有任何简单的WebAPI可以将专辑封面作为图像返回,就像GoogleStaticMapAPI(GoogleStaticMapAPI一样?我听说过Amazon和Last.fm的API,但是不能'找不到任何代码(除了PHP/Perl/Ruby等网络语言)。此外,它们是RESTAPI。任何帮助将不胜感激。有简单的URL(GET)查询还是只有REST/XML方法? 最佳答案 用手做应该不难。Album.getInfo的last.fmapi规范方法非常简单,而且它是一个RESTapi的事实使其更加简单。只需从服务器获取xml响应
书库搜索查询系统搭建的【目的】截至目前,2022年读秀书库包含5.0最新及4.0/3.0/2.0/1.0等往期版本,书库总量共500T,除了近两年出版的新书外,在此之前出版的所有书只要有电子版的基本都在该书库内,是非常强大的。虽然网盘群组存有这么多书库,但是书库中的原始文件命名都是SS书号,如何根据SS书号查询到书名、书作者、书页码、ISBN……等必要信息呢?该系统的搭建就在于解决这个查询问题,以方便快速的将文件名、文件路径、以及书名、作者、ISBN、SS书号、书页码、书年份、书出版社等信息全部关联起来,实现书信息一键互查!书库搜索查询系统搭建的【申明】该查询系统仅提供电子版书籍信息的查询用,
我想知道我们如何为pdf列表实现封面流效果,双击时,它应该打开相应的pdf。我真的很困惑,请帮帮我提前致谢 最佳答案 在openFlowView.m文件中搜索此方法-(void)awakeFromNib{[selfsetUpInitialState];}NowwhenyoufindthisreplacethismethodbybeloworaddlinesoftapGestureRecognizer.-(void)awakeFromNib{[selfsetUpInitialState];UITapGestureRecognizer*