android webview img标签加载图片问题 1C

请教一个问题,我在webview中的img标签中显示图片,显示getCacheDir( )目录下的图片显示不出来,但显示getExternalCacheDir()中的图片就行,路径是都是正确的,这是什么原因?

2个回答

你的缓存文件存储在SDCard上,所以要用getExternalCacheDir

u012581732
周小宇 我是新手具体一点,iss样式文件路径不解析
4 年多之前 回复
a874508605
问剑孤鸣 我响应webview的点击,调用系统的拍照,拍照后存储在getExternalCacheDir()目录下,回传给webview中的img标签能显示,但是存储在getCacheDir( )目录下的图片就不能显示了
4 年多之前 回复

getExternalCacheDir() 方法 API 如下:
File android.content.ContextWrapper.getExternalCacheDir()

Returns the absolute path to the directory on the primary external filesystem (that is somewhere on Environment.getExternalStorageDirectory() where the application can place cache files it owns. These files are internal to the application, and not typically visible to the user as media.

This is like getCacheDir() in that these files will be deleted when the application is uninstalled, ①however there are some important differences:
**
The platform does not always monitor the space available in external storage, and thus may not automatically delete these files. Currently the only time files here will be deleted by the platform is when running on android.os.Build.VERSION_CODES.JELLY_BEAN_MR1 or later and Environment.isExternalStorageEmulated() returns true. Note that you should be managing the maximum space you will use for these anyway, just like with getCacheDir().
External files are not always available: they will disappear if the user mounts the external storage on a computer or removes it. See the APIs on android.os.Environment for information in the storage state.
**②There is no security enforced with these files. For example, any application holding android.Manifest.permission.WRITE_EXTERNAL_STORAGE can write to these files. **

①和②你可以看下:
①说:以下是与getCacheDir不同点
②说: android.Manifest.permission.WRITE_EXTERNAL_STORAGE 只要有权限的应用都具有写权限。
那可以推导出 谁调用getCacheDir() 谁才能访问。

而从你的描述来看,你调用的是相机,相对于你的webView 来说是另外一个应用,那么 getCacheDir()是相机去调用存储的,因为不了解你的问题,我大体推算出 路径 是 /data/data/XXXX.camera/cache 那么基于上面的分析,webView 所在的应用是不具有访问 相机 缓存的权限。 而getExternalCacheDir 只要有android.Manifest.permission.WRITE_EXTERNAL_STORAGE 权限的应用都具有写权限

没能太理解你遇到的问题,以上不知能不能解决你的疑惑

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
android webview加载服务器上js自动轮播图片不显示问题,求大神帮忙
这个是手机版网站地址:m.daxuepai.com.cn 正常打开首页应该有轮播图片,如下图: ![图片说明](https://img-ask.csdn.net/upload/201601/20/1453302838_761230.png) 轮播功能是做web前端的人用js写的。 以下是我android中的代码,主要就是用webview加载了相应地址的资源,但是我加载了后那个轮播图就没有显示,代码如下: package com.example.testwebkit; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.Window; import android.view.WindowManager; import android.webkit.WebChromeClient; import android.webkit.WebSettings.ZoomDensity; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity { private WebView webView; @SuppressWarnings("deprecation") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); int flag=WindowManager.LayoutParams.FLAG_FULLSCREEN; //获得当前窗体对象 Window window=MainActivity.this.getWindow(); //设置当前窗体为全屏显示 window.setFlags(flag, flag); setContentView(R.layout.activity_main); webView = (WebView) findViewById(R.id.webView1); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setDomStorageEnabled(true); webView.loadUrl("http://m.daxuepai.com.cn"); webView.setWebChromeClient(new WebChromeClient(){ @Override public void onReceivedTitle(WebView view, String title) { // TODO Auto-generated method stub super.onReceivedTitle(view, title); } }); webView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub view.loadUrl(url); return super.shouldOverrideUrlLoading(view, url); } }); } } 打开后效果如下: ![图片说明](https://img-ask.csdn.net/upload/201601/20/1453303268_724677.png) 我用的是MX3,手机自带浏览器、手机版猎豹浏览器同样不加载轮播图片,手机qq浏览器、微信关注公众号后进首页都可以加载那个轮播图片,有大神能告诉我是为什么么? ``` ```
关于android webview无法加载某些网页的问题
网址是去哪儿的:http://touch.qunar.com/h5/train/trainList?startStation=%E6%B7%B1%E5%9C%B3&endStation=%E5%B9%BF%E5%B7%9E&searchType=stasta&sort=3 用webview直接loadUrl()会一直停在"正在跳转"界面,如图: ![图片说明](https://img-ask.csdn.net/upload/201604/19/1461061462_394203.jpg) webSettings.setJavaScriptEnabled(true); 设置允许执行js后则出现如下界面: ![图片说明](https://img-ask.csdn.net/upload/201604/19/1461061478_124847.jpg) 百度了一下qunaraphone,了解到: 5、Schema schema是native同学提供的全局调用方式,业务可以通过schema来呼起另一个业务。 前端可以直接用location.href= 的形式,访问这个schema,并调起相应功能。 这里要注意的是,暂时有三种schema头,qunariphone:// (去哪儿IOS客户端)、qunariphonepro:// (去哪儿IOS pro客户端)、qunaraphone:// (去哪儿安卓客户端)。前端需要通过userAgent,判断是哪个客户端,来调用不同头的schema。(userAgent中有相应的keyword。) == 不知道这跟webview有什么关系,要怎么弄才能正常访问呢?还有不允许执行js时访问新浪网会提示需要开启js,开启后就能正常访问,但淘宝网是一直都访问不了,一点反应都没有...
Android webView加载图片失败
文字内容都能加载成功,唯独图片显示xxx.jpg![图片说明](https://img-ask.csdn.net/upload/201606/27/1467015579_477489.png)
Android webView加载URL时候不知道什么原因屏幕两侧总有空白
![黑色的是设置的padding](https://img-ask.csdn.net/upload/201807/26/1532569270_363485.png)
webview 本地图片不显示的问题
android版本4.4.4,红米1s,html文件在远程服务器端,android 通过webview加载,html中img标签src为android本地图片路径: ``` <img src="file:///storage/emulated/0/klbs/20190309140122.jpeg" style="width:100px;height:100px;"/> ``` android 端代码: ``` webSettings.setAllowUniversalAccessFromFileURLs(true); webSettings.setAllowFileAccess(true); webSettings.setAllowFileAccessFromFileURLs(true); webSettings.setAllowUniversalAccessFromFileURLs(true); webSettings.setDomStorageEnabled(true); webSettings.setBlockNetworkImage(false); ``` 网页上显示图片是空白的,图片路径从手机图库里查到的,没有错误。 可能是什么原因导致的。
android webview打开支付宝二维码扫码支付页面
做了一个支付宝支付的一个功能,后台传了一个支付宝扫二维码付款的url给我,我这用webview打开这个url。 之前还好好的能打开,最近突然有问题了。现在的情况是webview加载完成了页面显示出来了,但是仅仅只显示1秒钟,立马就跳到找不到网页![图片说明](https://img-ask.csdn.net/upload/201506/29/1435558584_971577.png) 求大神告知原因阿!!
Android WebView 加载后显示与手机浏览器不同,感觉被压缩
![浏览器展示](https://img-ask.csdn.net/upload/201904/01/1554103803_353786.jpg) ![应用webview展示](https://img-ask.csdn.net/upload/201904/01/1554103836_734436.jpg) 另外:之前在webview中是显示正常的,最近发现如右图所示。前端工程师并没后修改代码,而Adnroid端的代码也没有修改。百思不得其解,希望有人告知。
Android:把图像加载到WebView的中间位置
我想在web视图上把图像加载到中间,但图像显示在web视图的左上角。图像是网络的,而不是当地的。 gifView.loadUrl(mImageUrl); gifView.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { view.getSettings().setLoadsImagesAutomatically(true); if (mProgressBar != null) { mProgressBar.setVisibility(View.GONE); } } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { if (mProgressBar != null) { mProgressBar.setVisibility(View.VISIBLE); } } }); <WebView android:id="@+id/gif_image" android:background="@null" android:layout_gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" /> 还添加了: String HTML_FORMAT = "<html><body style=\"text-align: center; background-color: null; vertical-align: middle;\"><img src = \"%s\" /></body></html>"; final String html = String.format(HTML_FORMAT, mImageUrl); gifView.loadDataWithBaseURL("", html, "text/html", "UTF-8", ""); 我使用上面的代码,怎么把图像加载到视图的中间呢?
android的webview加载jqm,单 选框 报这个错误
我用android的webview加载jqm,单 选框 报这个错误,复选框,没有问题,哪位高手帮我看一下这个是什么原因呢? [INFO:CONSOLE(2)] "Uncaught Error: cannot call methods on checkboxradio prior to initialization; attempted to call method 'refresh'", source: file:///android_asset/js/jquery.min.js (2) 代码如下: ![图片说明](https://img-ask.csdn.net/upload/201511/27/1448593561_571058.jpg) android调用代码如下: wb_content=(WebView) findViewById(R.id.wb_content); WebSettings webSettings = wb_content.getSettings(); webSettings.setSavePassword(false); webSettings.setSaveFormData(false); webSettings.setJavaScriptEnabled(true); webSettings.setSupportZoom(true); // Horizontal水平方向,Vertical竖直方向 wb_content.setHorizontalScrollBarEnabled(false); wb_content.setVerticalScrollBarEnabled(false); wb_content.setWebChromeClient(new WebChromeClient() { // 处理javascript中的alert public boolean onJsAlert(WebView view, String url, String message,final JsResult result) { // 构建一个Builder来显示网页中的对话框 Builder builder = new Builder(ShowProjectActivity.this); builder.setTitle("Alert"); builder.setMessage(message); builder.setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() { public void onClick(DialogInterface dialog, int which) { // 点击确定按钮之后,继续执行网页中的操作 result.confirm(); } }); builder.setCancelable(false); builder.create(); builder.show(); return true; }; // 处理javascript中的confirm public boolean onJsConfirm(WebView view, String url, String message, final JsResult result) { Builder builder = new Builder(ShowProjectActivity.this); builder.setTitle("confirm"); builder.setMessage(message); builder.setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.confirm(); } }); builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.cancel(); } }); builder.setCancelable(false); builder.create(); builder.show(); return true; }; // 设置网页加载的进度条 public void onProgressChanged(WebView view, int newProgress) { ShowProjectActivity.this.getWindow().setFeatureInt( Window.FEATURE_PROGRESS, newProgress * 100); super.onProgressChanged(view, newProgress); } // 设置应用程序的标题title public void onReceivedTitle(WebView view, String title) { ShowProjectActivity.this.setTitle(title); super.onReceivedTitle(view, title); } public void onReachedMaxAppCacheSize(long spaceNeeded, long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater) { quotaUpdater.updateQuota(spaceNeeded * 2); } }); wb_content.loadUrl(url); wb_content.addJavascriptInterface(new JavaScriptInterface(), "demo"); wb_content.loadUrl("file:///android_asset/22b40f93-e3aa-4e82-ad0d-d8c75d2a7cb6/1111.html");
webview无法正常加载web
代码如下![图片说明](https://img-ask.csdn.net/upload/201604/22/1461291686_808645.png) rotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置webview视图 setContentView(R.layout.activity_web); //实例化webview wv = (WebView) findViewById(R.id.web); //设置webview属性,使其能执行js文件。 wv.getSettings().setJavaScriptEnabled(true); wv.setHorizontalScrollBarEnabled(false); wv.setVerticalScrollBarEnabled(false); //加载需要显示的网页文件 String url = "file:///android_asset/www/index.html"; wv.loadUrl(url); }
Android assets 中的HTML<img>访问data/data下的图片,显示不出来。
问题,如题。 Android -webview加载assets下的HTML页面。 我们已经知道,HTML CSS JS IMG(HTML本身默认的一些图片)都放在了assets中, webview在加载HTML后,assets下的IMG是可以加载出来的; 现在,HTML需要加载一些data/data/...目录下的img(IM底层异步下载的所有用户头像存放于此),来显示每条动态的用户头像。可是,这样加载不了。。 我也考虑把data/data下的用户头像图片复制到assets下或者sd卡中,肯定也能解决,但是这样不是多出来一份Img嘛....不想这么做... 难道必须要让底层IM下载图片的时候,换存放图片的路径?~~~ 还有没有别的好方法啊~~~大婶们,~~求指点~~~ 在线等了
安卓使用腾讯内核的webview,ajax加载一些URL比较复杂的页面会报404
安卓使用腾讯内核的webview,ajax加载一些URL或者img标签的资源URL比较复杂的页面会报404, 代码非常简答,就是使用webview的.loadUrl()方法加载一个网页,网页上使用ajax或者img标签的URL比较复杂时,类似这样 http://192.168.10.111/aaaaaaa/bbbbbbbbb.adtion/0/3A740CFFE34728DA48258408002A0858/$FILE/MES%E7%94%9F%E4%BA%A7%E5%88%B6%E9%80%A0%E6%89%A7%E8%A1%8C%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F%E9%A6%96%E9%A1%B5%E6%A0%87%E8%AF%86-1.png 的链接无法加载,提示404,http://192.168.10.111:81/aaaa/bbbb.png 这种简单的链接是可以正常访问的,求求求救~~
(Android)三星手机加载webView出现白屏页面
![图片说明](https://img-ask.csdn.net/upload/201512/10/1449714631_496807.png) 如图,测试手机型号是:三星SCH-I829,android版本:4.1.2,程序中只有一个Activity,内包含4个Fragment,加载Fragment的时候切换url,当点击切换Fragment多次后,出现白屏页面。错误信息:Uncaught TypeError: Object #<Object> has no method 'attr':159,Uncaught TypeError: Object #<Object> has no method 'children':3,Uncaught TypeError: Object #<Object> has no method 'text':7。大家帮忙看看啊……多谢!!!
有关webview很竖屏,及软键盘问题
![图片说明](https://img-ask.csdn.net/upload/201909/05/1567669622_948376.jpg)![图片说明](https://img-ask.csdn.net/upload/201909/05/1567669631_829632.jpg) 加载webview页面是有少量横屏页面,大部分还是竖屏的,所以屏幕方向强制为竖屏,但是横屏webview软键盘弹出是竖屏的状态下,如果想兼容横屏软键盘这个问题怎么解决
android向webview加载的页面中填充账号密码并且自动登陆遇到问题求解
``` public static String LOGIN = "http://ui.ptlogin2.qq.com/cgi-bin/login?appid=46000101&style=8&lang=&low_login=1&hide_title_bar=1&hide_close_icon=1&daid=6&hln_css=http://mat1.gtimg.com/www/mb/images/logo244x100.png&s_url=http%3A%2F%2Fw.t.qq.com%2Ftouch"; final String tencent_url = LOGIN; try { String js = FileUtils.readAssetsFile("oauthfortencent.js", TencentWeiboActivity.this); js = js.replace("%u%", tAccount).replace("%p%", tPassword); Document dom = Jsoup.connect(LOGIN).get(); html = dom.toString(); html = html.replace("</head>", js + "</head>") .replace("action-type=\"submit\"", "action-type=\"submit\" id=\"submit\""); return html; } catch (Exception e) { e.printStackTrace(); } mWebView.loadDataWithBaseURL("http://open.qq.com/", html, "text/html", "UTF-8", ""); ``` js代码: <script type="text/javascript"> function fillAccount(){ document.getElementById("u").value = '%u%'; document.getElementById("p").value = '%p%'; document.getElementById("go").click(); } </script> 原本网页应该是这样子的 ![图片说明](https://img-ask.csdn.net/upload/201509/08/1441727939_450508.png) 填充之后 ![图片说明](https://img-ask.csdn.net/upload/201509/09/1441728288_363319.png) 而且登录按钮不能被点击 我应该怎么弄才可以,谢谢
webview加载页面后form表单的位置不对,点了几下屏幕就又好了
![图片说明](https://img-ask.csdn.net/upload/201505/08/1431047968_751057.gif) 下边是我的MainActivity.java以及布局,跪求大牛指导。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/wordpress_logo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="-60dip" android:adjustViewBounds="true" android:background="@drawable/loading2" android:paddingLeft="20dip" android:paddingRight="20dip" android:scaleType="centerInside" /> <WebView android:id="@+id/eshetong_wv" android:layout_height="fill_parent" android:layout_width="fill_parent"/> </LinearLayout> ----------------------------------------------------------- public class MainActivity extends Activity { private WebView webView; private ImageView img; String url = "http://sttuolian.wicp.net:8086"; private Dialog myDialog; @SuppressLint("SetJavaScriptEnabled") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activitymain); webView = (WebView) findViewById(R.id.eshetong_wv); img = (ImageView) findViewById(R.id.wordpress_logo); WebSettings webSettings = webView.getSettings(); // 支持JS webSettings.setJavaScriptEnabled(true); // 将图片调整到适合webView的大小 webSettings.setUseWideViewPort(false); // webSettings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN); // 支持缩放 webSettings.setSupportZoom(true); webSettings.setBuiltInZoomControls(true); // 可以访问文件 webSettings.setAllowFileAccess(true); // 支持通过JS打开新窗口 webSettings.setJavaScriptCanOpenWindowsAutomatically(true); // 支持自动加载图片 webSettings.setLoadsImagesAutomatically(true); // 使滚动条不占位 webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); webView.setWebViewClient(new WebViewClient() { @Override public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { view.stopLoading(); view.clearView(); Message msg = handler.obtainMessage(); msg.what = 1;// handler.sendMessage(msg); } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } @Override public void onPageFinished(WebView view, String url) { img.setVisibility(View.GONE); webView.setVisibility(View.VISIBLE); super.onPageFinished(view, url); } }); webView.loadUrl(url); } @Override public boolean onCreateOptionsMenu(Menu menu) { // TODO Auto-generated method stub getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { webView.goBack(); return true; } return super.onKeyDown(keyCode, event); } protected Handler handler = new Handler() { public void handleMessage(Message message) { if(message.what==1){ webView.stopLoading(); webView.loadUrl("file:///android_asset/error.html"); }else{ myDialog.show(); } } }; } ```
webview加载天猫商城时,弹出提示下载框之后就会出错,怎么回事,急急急。。
webview加载天猫商城时,弹出提示下载框之后就会出错,怎么回事,急急急。。错误信息是Not allowed to load local resource: file:///android_asset/webkit/android-weberror.png", source: data:text/html,chromewebdata (12![图片说明](https://img-ask.csdn.net/upload/201601/06/1452047024_898677.png)
Alertdialog中加载webview地址问题
![![图片说明](https://img-ask.csdn.net/upload/201812/05/1543995848_731538.jpg)图片说明](https://img-ask.csdn.net/upload/201812/05/1543995827_771094.jpg) 如图所示;我的图片没有居中 还能够左右滑动求帮助该怎么设置
webView中用loadUrl(javascript:+"js语句") 强制返回处理结果
![图片说明](https://img-ask.csdn.net/upload/201706/26/1498453470_119009.gif) 通过javascript在某位置添加一张图片后,webView直接单独跳转到图片上
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
开源一个功能完整的SpringBoot项目框架
福利来了,给大家带来一个福利。 最近想了解一下有关Spring Boot的开源项目,看了很多开源的框架,大多是一些demo或者是一个未成形的项目,基本功能都不完整,尤其是用户权限和菜单方面几乎没有完整的。 想到我之前做的框架,里面通用模块有:用户模块,权限模块,菜单模块,功能模块也齐全了,每一个功能都是完整的。 打算把这个框架分享出来,供大家使用和学习。 为什么用框架? 框架可以学习整体
源码阅读(19):Java中主要的Map结构——HashMap容器(下1)
(接上文《源码阅读(18):Java中主要的Map结构——HashMap容器(中)》) 3.4.4、HashMap添加K-V键值对(红黑树方式) 上文我们介绍了在HashMap中table数组的某个索引位上,基于单向链表添加新的K-V键值对对象(HashMap.Node&lt;K, V&gt;类的实例),但是我们同时知道在某些的场景下,HashMap中table数据的某个索引位上,数据是按照红黑树
c++制作的植物大战僵尸,开源,一代二代结合游戏
    此游戏全部由本人自己制作完成。游戏大部分的素材来源于原版游戏素材,少部分搜集于网络,以及自己制作。 此游戏为同人游戏而且仅供学习交流使用,任何人未经授权,不得对本游戏进行更改、盗用等,否则后果自负。 目前有六种僵尸和六种植物,植物和僵尸的动画都是本人做的。qq:2117610943 开源代码下载 提取码:3vzm 点击下载--&gt; 11月28日 新增四种植物 统一植物画风,全部修
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
深度学习图像算法在内容安全领域的应用
互联网给人们生活带来便利的同时也隐含了大量不良信息,防范互联网平台有害内容传播引起了多方面的高度关注。本次演讲从技术层面分享网易易盾在内容安全领域的算法实践经验,包括深度学习图
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
写在前面: 我是 扬帆向海,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。 这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。 目录一、杨辉三角的介绍二、杨辉三角的算法思想三、代码实现1.第一种写法2.第二种写法 一、杨辉三角的介绍 百度
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Python 编程实用技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法,并会持续更新。
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,
程序员:我终于知道post和get的区别
IT界知名的程序员曾说:对于那些月薪三万以下,自称IT工程师的码农们,其实我们从来没有把他们归为我们IT工程师的队伍。他们虽然总是以IT工程师自居,但只是他们一厢情愿罢了。 此话一出,不知激起了多少(码农)程序员的愤怒,却又无可奈何,于是码农问程序员。 码农:你知道get和post请求到底有什么区别? 程序员:你看这篇就知道了。 码农:你月薪三万了? 程序员:嗯。 码农:你是怎么做到的? 程序员:
"狗屁不通文章生成器"登顶GitHub热榜,分分钟写出万字形式主义大作
前言 GitHub 被誉为全球最大的同性交友网站,……,陪伴我们已经走过 10+ 年时间,它托管了大量的软件代码,同时也承载了程序员无尽的欢乐。 上周给大家分享了一篇10个让你笑的合不拢嘴的Github项目,而且还拿了7万+个Star哦,有兴趣的朋友,可以看看, 印象最深刻的是 “ 呼吸不止,码字不停 ”: 老实交代,你是不是经常准备写个技术博客,打开word后瞬间灵感便秘,码不出字? 有什么
推荐几款比较实用的工具,网站
1.盘百度PanDownload 这个云盘工具是免费的,可以进行资源搜索,提速(偶尔会抽风????) 不要去某站买付费的???? PanDownload下载地址 2.BeJSON 这是一款拥有各种在线工具的网站,推荐它的主要原因是网站简洁,功能齐全,广告相比其他广告好太多了 bejson网站 3.二维码美化 这个网站的二维码美化很好看,网站界面也很...
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU
相关热词 c# plc s1200 c#里氏转换原则 c# 主界面 c# do loop c#存为组套 模板 c# 停掉协程 c# rgb 读取图片 c# 图片颜色调整 最快 c#多张图片上传 c#密封类与密封方法
立即提问